<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><link rel="stylesheet" type="text/css" href="style.css" /><script type="text/javascript" src="highlight.js"></script></head><body><pre><span class="hs-pragma">{-# LANGUAGE DeriveFoldable #-}</span><span>
</span><span id="line-2"></span><span class="hs-pragma">{-# LANGUAGE DeriveFunctor #-}</span><span>
</span><span id="line-3"></span><span class="hs-pragma">{-# LANGUAGE DeriveTraversable #-}</span><span>
</span><span id="line-4"></span><span class="hs-pragma">{-# LANGUAGE TypeFamilies #-}</span><span>
</span><span id="line-5"></span><span class="hs-pragma">{-# LANGUAGE GeneralizedNewtypeDeriving #-}</span><span>
</span><span id="line-6"></span><span>
</span><span id="line-7"></span><span class="hs-keyword">module</span><span> </span><span class="hs-identifier">GHC.Cmm.Dataflow.Label</span><span>
</span><span id="line-8"></span><span>    </span><span class="hs-special">(</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier">Label</span></a></span><span>
</span><span id="line-9"></span><span>    </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LabelMap"><span class="hs-identifier">LabelMap</span></a></span><span>
</span><span id="line-10"></span><span>    </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LabelSet"><span class="hs-identifier">LabelSet</span></a></span><span>
</span><span id="line-11"></span><span>    </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#FactBase"><span class="hs-identifier">FactBase</span></a></span><span>
</span><span id="line-12"></span><span>    </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#lookupFact"><span class="hs-identifier">lookupFact</span></a></span><span>
</span><span id="line-13"></span><span>    </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#mkHooplLabel"><span class="hs-identifier">mkHooplLabel</span></a></span><span>
</span><span id="line-14"></span><span>    </span><span class="hs-special">)</span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-15"></span><span>
</span><span id="line-16"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Prelude.html"><span class="hs-identifier">GHC.Prelude</span></a></span><span>
</span><span id="line-17"></span><span>
</span><span id="line-18"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html"><span class="hs-identifier">GHC.Utils.Outputable</span></a></span><span>
</span><span id="line-19"></span><span>
</span><span id="line-20"></span><span class="hs-comment">-- TODO: This should really just use GHC's Unique and Uniq{Set,FM}</span><span>
</span><span id="line-21"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Collections.html"><span class="hs-identifier">GHC.Cmm.Dataflow.Collections</span></a></span><span>
</span><span id="line-22"></span><span>
</span><span id="line-23"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Types.Unique.html"><span class="hs-identifier">GHC.Types.Unique</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Types.Unique.html#Uniquable"><span class="hs-identifier">Uniquable</span></a></span><span class="hs-special">(</span><span class="hs-glyph">..</span><span class="hs-special">)</span><span class="hs-special">)</span><span>
</span><span id="line-24"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="GHC.Data.TrieMap.html"><span class="hs-identifier">GHC.Data.TrieMap</span></a></span><span>
</span><span id="line-25"></span><span>
</span><span id="line-26"></span><span>
</span><span id="line-27"></span><span class="hs-comment">-----------------------------------------------------------------------------</span><span>
</span><span id="line-28"></span><span class="hs-comment">--              Label</span><span>
</span><span id="line-29"></span><span class="hs-comment">-----------------------------------------------------------------------------</span><span>
</span><span id="line-30"></span><span>
</span><span id="line-31"></span><span class="hs-keyword">newtype</span><span> </span><span id="Label"><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-var">Label</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span id="Label"><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-var">Label</span></a></span></span><span> </span><span class="hs-special">{</span><span> </span><span id="lblToUnique"><span class="annot"><span class="annottext">Label -&gt; Int
</span><a href="GHC.Cmm.Dataflow.Label.html#lblToUnique"><span class="hs-identifier hs-var hs-var">lblToUnique</span></a></span></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><span class="hs-identifier hs-type">Int</span></span><span> </span><span class="hs-special">}</span><span>
</span><span id="line-32"></span><span>  </span><span class="hs-keyword">deriving</span><span> </span><span class="hs-special">(</span><span id="local-6989586621680939802"><span id="local-6989586621680939807"><span class="annot"><span class="annottext">Label -&gt; Label -&gt; Bool
(Label -&gt; Label -&gt; Bool) -&gt; (Label -&gt; Label -&gt; Bool) -&gt; Eq Label
forall a. (a -&gt; a -&gt; Bool) -&gt; (a -&gt; a -&gt; Bool) -&gt; Eq a
/= :: Label -&gt; Label -&gt; Bool
$c/= :: Label -&gt; Label -&gt; Bool
== :: Label -&gt; Label -&gt; Bool
$c== :: Label -&gt; Label -&gt; Bool
</span><span class="hs-identifier hs-var hs-var hs-var hs-var hs-var hs-var">Eq</span></span></span></span><span class="hs-special">,</span><span> </span><span id="local-6989586621680939769"><span id="local-6989586621680939773"><span id="local-6989586621680939777"><span id="local-6989586621680939781"><span id="local-6989586621680939785"><span id="local-6989586621680939789"><span id="local-6989586621680939794"><span class="annot"><span class="annottext">Eq Label
Eq Label
-&gt; (Label -&gt; Label -&gt; Ordering)
-&gt; (Label -&gt; Label -&gt; Bool)
-&gt; (Label -&gt; Label -&gt; Bool)
-&gt; (Label -&gt; Label -&gt; Bool)
-&gt; (Label -&gt; Label -&gt; Bool)
-&gt; (Label -&gt; Label -&gt; Label)
-&gt; (Label -&gt; Label -&gt; Label)
-&gt; Ord Label
Label -&gt; Label -&gt; Bool
Label -&gt; Label -&gt; Ordering
Label -&gt; Label -&gt; Label
forall a.
Eq a
-&gt; (a -&gt; a -&gt; Ordering)
-&gt; (a -&gt; a -&gt; Bool)
-&gt; (a -&gt; a -&gt; Bool)
-&gt; (a -&gt; a -&gt; Bool)
-&gt; (a -&gt; a -&gt; Bool)
-&gt; (a -&gt; a -&gt; a)
-&gt; (a -&gt; a -&gt; a)
-&gt; Ord a
min :: Label -&gt; Label -&gt; Label
$cmin :: Label -&gt; Label -&gt; Label
max :: Label -&gt; Label -&gt; Label
$cmax :: Label -&gt; Label -&gt; Label
&gt;= :: Label -&gt; Label -&gt; Bool
$c&gt;= :: Label -&gt; Label -&gt; Bool
&gt; :: Label -&gt; Label -&gt; Bool
$c&gt; :: Label -&gt; Label -&gt; Bool
&lt;= :: Label -&gt; Label -&gt; Bool
$c&lt;= :: Label -&gt; Label -&gt; Bool
&lt; :: Label -&gt; Label -&gt; Bool
$c&lt; :: Label -&gt; Label -&gt; Bool
compare :: Label -&gt; Label -&gt; Ordering
$ccompare :: Label -&gt; Label -&gt; Ordering
</span><span class="hs-identifier hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var">Ord</span></span></span></span></span></span></span></span></span><span class="hs-special">)</span><span>
</span><span id="line-33"></span><span>
</span><span id="line-34"></span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#mkHooplLabel"><span class="hs-identifier hs-type">mkHooplLabel</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><span class="hs-identifier hs-type">Int</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span>
</span><span id="line-35"></span><span id="mkHooplLabel"><span class="annot"><span class="annottext">mkHooplLabel :: Int -&gt; Label
</span><a href="GHC.Cmm.Dataflow.Label.html#mkHooplLabel"><span class="hs-identifier hs-var hs-var">mkHooplLabel</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Int -&gt; Label
</span><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-var">Label</span></a></span><span>
</span><span id="line-36"></span><span>
</span><span id="line-37"></span><span class="hs-keyword">instance</span><span> </span><span id="local-6989586621680939760"><span id="local-6989586621680939763"><span class="annot"><a href="../../base/src/GHC.Show.html#Show"><span class="hs-identifier hs-type">Show</span></a></span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span></span></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-38"></span><span>  </span><span id="local-6989586621680939756"><span class="annot"><span class="annottext">show :: Label -&gt; String
</span><a href="../../base/src/GHC.Show.html#show"><span class="hs-identifier hs-var hs-var hs-var hs-var">show</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span id="local-6989586621680939754"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939754"><span class="hs-identifier hs-var">n</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;L&quot;</span></span><span> </span><span class="annot"><span class="annottext">String -&gt; ShowS
forall a. [a] -&gt; [a] -&gt; [a]
</span><a href="../../base/src/GHC.Base.html#%2B%2B"><span class="hs-operator hs-var">++</span></a></span><span> </span><span class="annot"><span class="annottext">Int -&gt; String
forall a. Show a =&gt; a -&gt; String
</span><a href="../../base/src/GHC.Show.html#show"><span class="hs-identifier hs-var">show</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939754"><span class="hs-identifier hs-var">n</span></a></span><span>
</span><span id="line-39"></span><span>
</span><span id="line-40"></span><span class="hs-keyword">instance</span><span> </span><span class="annot"><a href="GHC.Types.Unique.html#Uniquable"><span class="hs-identifier hs-type">Uniquable</span></a></span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-41"></span><span>  </span><span id="local-6989586621680939748"><span class="annot"><span class="annottext">getUnique :: Label -&gt; Unique
</span><a href="GHC.Types.Unique.html#getUnique"><span class="hs-identifier hs-var hs-var hs-var hs-var">getUnique</span></a></span></span><span> </span><span id="local-6989586621680939746"><span class="annot"><span class="annottext">Label
</span><a href="#local-6989586621680939746"><span class="hs-keyword hs-var">label</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Int -&gt; Unique
forall a. Uniquable a =&gt; a -&gt; Unique
</span><a href="GHC.Types.Unique.html#getUnique"><span class="hs-identifier hs-var">getUnique</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Label -&gt; Int
</span><a href="GHC.Cmm.Dataflow.Label.html#lblToUnique"><span class="hs-identifier hs-var hs-var">lblToUnique</span></a></span><span> </span><span class="annot"><span class="annottext">Label
</span><a href="#local-6989586621680939746"><span class="hs-keyword hs-var">label</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-42"></span><span>
</span><span id="line-43"></span><span class="hs-keyword">instance</span><span> </span><span id="local-6989586621680939743"><span class="annot"><a href="GHC.Utils.Outputable.html#Outputable"><span class="hs-identifier hs-type">Outputable</span></a></span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-44"></span><span>  </span><span id="local-6989586621680939738"><span class="annot"><span class="annottext">ppr :: Label -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var hs-var hs-var hs-var">ppr</span></a></span></span><span> </span><span id="local-6989586621680939736"><span class="annot"><span class="annottext">Label
</span><a href="#local-6989586621680939736"><span class="hs-keyword hs-var">label</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Unique -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Label -&gt; Unique
forall a. Uniquable a =&gt; a -&gt; Unique
</span><a href="GHC.Types.Unique.html#getUnique"><span class="hs-identifier hs-var">getUnique</span></a></span><span> </span><span class="annot"><span class="annottext">Label
</span><a href="#local-6989586621680939736"><span class="hs-keyword hs-var">label</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-45"></span><span>
</span><span id="line-46"></span><span class="hs-comment">-----------------------------------------------------------------------------</span><span>
</span><span id="line-47"></span><span class="hs-comment">-- LabelSet</span><span>
</span><span id="line-48"></span><span>
</span><span id="line-49"></span><span class="hs-keyword">newtype</span><span> </span><span id="LabelSet"><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LabelSet"><span class="hs-identifier hs-var">LabelSet</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span id="LS"><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-var">LS</span></a></span></span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Collections.html#UniqueSet"><span class="hs-identifier hs-type">UniqueSet</span></a></span><span> </span><span class="hs-keyword">deriving</span><span> </span><span class="hs-special">(</span><span id="local-6989586621680939728"><span id="local-6989586621680939733"><span class="annot"><span class="annottext">LabelSet -&gt; LabelSet -&gt; Bool
(LabelSet -&gt; LabelSet -&gt; Bool)
-&gt; (LabelSet -&gt; LabelSet -&gt; Bool) -&gt; Eq LabelSet
forall a. (a -&gt; a -&gt; Bool) -&gt; (a -&gt; a -&gt; Bool) -&gt; Eq a
/= :: LabelSet -&gt; LabelSet -&gt; Bool
$c/= :: LabelSet -&gt; LabelSet -&gt; Bool
== :: LabelSet -&gt; LabelSet -&gt; Bool
$c== :: LabelSet -&gt; LabelSet -&gt; Bool
</span><span class="hs-identifier hs-var hs-var hs-var hs-var hs-var hs-var">Eq</span></span></span></span><span class="hs-special">,</span><span> </span><span id="local-6989586621680939696"><span id="local-6989586621680939700"><span id="local-6989586621680939704"><span id="local-6989586621680939708"><span id="local-6989586621680939712"><span id="local-6989586621680939716"><span id="local-6989586621680939721"><span class="annot"><span class="annottext">Eq LabelSet
Eq LabelSet
-&gt; (LabelSet -&gt; LabelSet -&gt; Ordering)
-&gt; (LabelSet -&gt; LabelSet -&gt; Bool)
-&gt; (LabelSet -&gt; LabelSet -&gt; Bool)
-&gt; (LabelSet -&gt; LabelSet -&gt; Bool)
-&gt; (LabelSet -&gt; LabelSet -&gt; Bool)
-&gt; (LabelSet -&gt; LabelSet -&gt; LabelSet)
-&gt; (LabelSet -&gt; LabelSet -&gt; LabelSet)
-&gt; Ord LabelSet
LabelSet -&gt; LabelSet -&gt; Bool
LabelSet -&gt; LabelSet -&gt; Ordering
LabelSet -&gt; LabelSet -&gt; LabelSet
forall a.
Eq a
-&gt; (a -&gt; a -&gt; Ordering)
-&gt; (a -&gt; a -&gt; Bool)
-&gt; (a -&gt; a -&gt; Bool)
-&gt; (a -&gt; a -&gt; Bool)
-&gt; (a -&gt; a -&gt; Bool)
-&gt; (a -&gt; a -&gt; a)
-&gt; (a -&gt; a -&gt; a)
-&gt; Ord a
min :: LabelSet -&gt; LabelSet -&gt; LabelSet
$cmin :: LabelSet -&gt; LabelSet -&gt; LabelSet
max :: LabelSet -&gt; LabelSet -&gt; LabelSet
$cmax :: LabelSet -&gt; LabelSet -&gt; LabelSet
&gt;= :: LabelSet -&gt; LabelSet -&gt; Bool
$c&gt;= :: LabelSet -&gt; LabelSet -&gt; Bool
&gt; :: LabelSet -&gt; LabelSet -&gt; Bool
$c&gt; :: LabelSet -&gt; LabelSet -&gt; Bool
&lt;= :: LabelSet -&gt; LabelSet -&gt; Bool
$c&lt;= :: LabelSet -&gt; LabelSet -&gt; Bool
&lt; :: LabelSet -&gt; LabelSet -&gt; Bool
$c&lt; :: LabelSet -&gt; LabelSet -&gt; Bool
compare :: LabelSet -&gt; LabelSet -&gt; Ordering
$ccompare :: LabelSet -&gt; LabelSet -&gt; Ordering
</span><span class="hs-identifier hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var">Ord</span></span></span></span></span></span></span></span></span><span class="hs-special">,</span><span> </span><span id="local-6989586621680939684"><span id="local-6989586621680939686"><span id="local-6989586621680939691"><span class="annot"><span class="annottext">Int -&gt; LabelSet -&gt; ShowS
[LabelSet] -&gt; ShowS
LabelSet -&gt; String
(Int -&gt; LabelSet -&gt; ShowS)
-&gt; (LabelSet -&gt; String) -&gt; ([LabelSet] -&gt; ShowS) -&gt; Show LabelSet
forall a.
(Int -&gt; a -&gt; ShowS) -&gt; (a -&gt; String) -&gt; ([a] -&gt; ShowS) -&gt; Show a
showList :: [LabelSet] -&gt; ShowS
$cshowList :: [LabelSet] -&gt; ShowS
show :: LabelSet -&gt; String
$cshow :: LabelSet -&gt; String
showsPrec :: Int -&gt; LabelSet -&gt; ShowS
$cshowsPrec :: Int -&gt; LabelSet -&gt; ShowS
</span><a href="../../base/src/GHC.Show.html#Show"><span class="hs-identifier hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var">Show</span></a></span></span></span></span><span class="hs-special">,</span><span> </span><span id="local-6989586621680939670"><span id="local-6989586621680939674"><span id="local-6989586621680939679"><span class="annot"><span class="annottext">Semigroup LabelSet
LabelSet
Semigroup LabelSet
-&gt; LabelSet
-&gt; (LabelSet -&gt; LabelSet -&gt; LabelSet)
-&gt; ([LabelSet] -&gt; LabelSet)
-&gt; Monoid LabelSet
[LabelSet] -&gt; LabelSet
LabelSet -&gt; LabelSet -&gt; LabelSet
forall a.
Semigroup a -&gt; a -&gt; (a -&gt; a -&gt; a) -&gt; ([a] -&gt; a) -&gt; Monoid a
mconcat :: [LabelSet] -&gt; LabelSet
$cmconcat :: [LabelSet] -&gt; LabelSet
mappend :: LabelSet -&gt; LabelSet -&gt; LabelSet
$cmappend :: LabelSet -&gt; LabelSet -&gt; LabelSet
mempty :: LabelSet
$cmempty :: LabelSet
</span><a href="../../base/src/GHC.Base.html#Monoid"><span class="hs-identifier hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var">Monoid</span></a></span></span></span></span><span class="hs-special">,</span><span> </span><span id="local-6989586621680939653"><span id="local-6989586621680939659"><span id="local-6989586621680939664"><span class="annot"><span class="annottext">NonEmpty LabelSet -&gt; LabelSet
LabelSet -&gt; LabelSet -&gt; LabelSet
(LabelSet -&gt; LabelSet -&gt; LabelSet)
-&gt; (NonEmpty LabelSet -&gt; LabelSet)
-&gt; (forall b. Integral b =&gt; b -&gt; LabelSet -&gt; LabelSet)
-&gt; Semigroup LabelSet
forall b. Integral b =&gt; b -&gt; LabelSet -&gt; LabelSet
forall a.
(a -&gt; a -&gt; a)
-&gt; (NonEmpty a -&gt; a)
-&gt; (forall b. Integral b =&gt; b -&gt; a -&gt; a)
-&gt; Semigroup a
stimes :: forall b. Integral b =&gt; b -&gt; LabelSet -&gt; LabelSet
$cstimes :: forall b. Integral b =&gt; b -&gt; LabelSet -&gt; LabelSet
sconcat :: NonEmpty LabelSet -&gt; LabelSet
$csconcat :: NonEmpty LabelSet -&gt; LabelSet
&lt;&gt; :: LabelSet -&gt; LabelSet -&gt; LabelSet
$c&lt;&gt; :: LabelSet -&gt; LabelSet -&gt; LabelSet
</span><a href="../../base/src/GHC.Base.html#Semigroup"><span class="hs-identifier hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var">Semigroup</span></a></span></span></span></span><span class="hs-special">)</span><span>
</span><span id="line-50"></span><span>
</span><span id="line-51"></span><span class="hs-keyword">instance</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Collections.html#IsSet"><span class="hs-identifier hs-type">IsSet</span></a></span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LabelSet"><span class="hs-identifier hs-type">LabelSet</span></a></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-52"></span><span>  </span><span class="hs-keyword">type</span><span> </span><span id="ElemOf"><span class="annot"><a href="GHC.Cmm.Dataflow.Collections.html#ElemOf"><span class="hs-identifier hs-var">ElemOf</span></a></span></span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LabelSet"><span class="hs-identifier hs-type">LabelSet</span></a></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span>
</span><span id="line-53"></span><span>
</span><span id="line-54"></span><span>  </span><span id="local-6989586621680939627"><span class="annot"><span class="annottext">setNull :: LabelSet -&gt; Bool
</span><a href="GHC.Cmm.Dataflow.Collections.html#setNull"><span class="hs-identifier hs-var hs-var hs-var hs-var">setNull</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939625"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939625"><span class="hs-identifier hs-var">s</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueSet -&gt; Bool
forall set. IsSet set =&gt; set -&gt; Bool
</span><a href="GHC.Cmm.Dataflow.Collections.html#setNull"><span class="hs-identifier hs-var">setNull</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939625"><span class="hs-identifier hs-var">s</span></a></span><span>
</span><span id="line-55"></span><span>  </span><span id="local-6989586621680939623"><span class="annot"><span class="annottext">setSize :: LabelSet -&gt; Int
</span><a href="GHC.Cmm.Dataflow.Collections.html#setSize"><span class="hs-identifier hs-var hs-var hs-var hs-var">setSize</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939621"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939621"><span class="hs-identifier hs-var">s</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueSet -&gt; Int
forall set. IsSet set =&gt; set -&gt; Int
</span><a href="GHC.Cmm.Dataflow.Collections.html#setSize"><span class="hs-identifier hs-var">setSize</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939621"><span class="hs-identifier hs-var">s</span></a></span><span>
</span><span id="line-56"></span><span>  </span><span id="local-6989586621680939619"><span class="annot"><span class="annottext">setMember :: ElemOf LabelSet -&gt; LabelSet -&gt; Bool
</span><a href="GHC.Cmm.Dataflow.Collections.html#setMember"><span class="hs-identifier hs-var hs-var hs-var hs-var">setMember</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span id="local-6989586621680939617"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939617"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939616"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939616"><span class="hs-identifier hs-var">s</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">ElemOf UniqueSet -&gt; UniqueSet -&gt; Bool
forall set. IsSet set =&gt; ElemOf set -&gt; set -&gt; Bool
</span><a href="GHC.Cmm.Dataflow.Collections.html#setMember"><span class="hs-identifier hs-var">setMember</span></a></span><span> </span><span class="annot"><span class="annottext">Int
ElemOf UniqueSet
</span><a href="#local-6989586621680939617"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939616"><span class="hs-identifier hs-var">s</span></a></span><span>
</span><span id="line-57"></span><span>
</span><span id="line-58"></span><span>  </span><span id="local-6989586621680939614"><span class="annot"><span class="annottext">setEmpty :: LabelSet
</span><a href="GHC.Cmm.Dataflow.Collections.html#setEmpty"><span class="hs-identifier hs-var hs-var hs-var hs-var">setEmpty</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-var">LS</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
forall set. IsSet set =&gt; set
</span><a href="GHC.Cmm.Dataflow.Collections.html#setEmpty"><span class="hs-identifier hs-var">setEmpty</span></a></span><span>
</span><span id="line-59"></span><span>  </span><span id="local-6989586621680939611"><span class="annot"><span class="annottext">setSingleton :: ElemOf LabelSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Collections.html#setSingleton"><span class="hs-identifier hs-var hs-var hs-var hs-var">setSingleton</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span id="local-6989586621680939609"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939609"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-var">LS</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">ElemOf UniqueSet -&gt; UniqueSet
forall set. IsSet set =&gt; ElemOf set -&gt; set
</span><a href="GHC.Cmm.Dataflow.Collections.html#setSingleton"><span class="hs-identifier hs-var">setSingleton</span></a></span><span> </span><span class="annot"><span class="annottext">Int
ElemOf UniqueSet
</span><a href="#local-6989586621680939609"><span class="hs-identifier hs-var">k</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-60"></span><span>  </span><span id="local-6989586621680939607"><span class="annot"><span class="annottext">setInsert :: ElemOf LabelSet -&gt; LabelSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Collections.html#setInsert"><span class="hs-identifier hs-var hs-var hs-var hs-var">setInsert</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span id="local-6989586621680939605"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939605"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939604"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939604"><span class="hs-identifier hs-var">s</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-var">LS</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">ElemOf UniqueSet -&gt; UniqueSet -&gt; UniqueSet
forall set. IsSet set =&gt; ElemOf set -&gt; set -&gt; set
</span><a href="GHC.Cmm.Dataflow.Collections.html#setInsert"><span class="hs-identifier hs-var">setInsert</span></a></span><span> </span><span class="annot"><span class="annottext">Int
ElemOf UniqueSet
</span><a href="#local-6989586621680939605"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939604"><span class="hs-identifier hs-var">s</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-61"></span><span>  </span><span id="local-6989586621680939602"><span class="annot"><span class="annottext">setDelete :: ElemOf LabelSet -&gt; LabelSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Collections.html#setDelete"><span class="hs-identifier hs-var hs-var hs-var hs-var">setDelete</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span id="local-6989586621680939600"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939600"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939599"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939599"><span class="hs-identifier hs-var">s</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-var">LS</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">ElemOf UniqueSet -&gt; UniqueSet -&gt; UniqueSet
forall set. IsSet set =&gt; ElemOf set -&gt; set -&gt; set
</span><a href="GHC.Cmm.Dataflow.Collections.html#setDelete"><span class="hs-identifier hs-var">setDelete</span></a></span><span> </span><span class="annot"><span class="annottext">Int
ElemOf UniqueSet
</span><a href="#local-6989586621680939600"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939599"><span class="hs-identifier hs-var">s</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-62"></span><span>
</span><span id="line-63"></span><span>  </span><span id="local-6989586621680939597"><span class="annot"><span class="annottext">setUnion :: LabelSet -&gt; LabelSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Collections.html#setUnion"><span class="hs-identifier hs-var hs-var hs-var hs-var">setUnion</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939595"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939595"><span class="hs-identifier hs-var">x</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939594"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939594"><span class="hs-identifier hs-var">y</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-var">LS</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">UniqueSet -&gt; UniqueSet -&gt; UniqueSet
forall set. IsSet set =&gt; set -&gt; set -&gt; set
</span><a href="GHC.Cmm.Dataflow.Collections.html#setUnion"><span class="hs-identifier hs-var">setUnion</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939595"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939594"><span class="hs-identifier hs-var">y</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-64"></span><span>  </span><span id="local-6989586621680939592"><span class="annot"><span class="annottext">setDifference :: LabelSet -&gt; LabelSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Collections.html#setDifference"><span class="hs-identifier hs-var hs-var hs-var hs-var">setDifference</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939590"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939590"><span class="hs-identifier hs-var">x</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939589"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939589"><span class="hs-identifier hs-var">y</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-var">LS</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">UniqueSet -&gt; UniqueSet -&gt; UniqueSet
forall set. IsSet set =&gt; set -&gt; set -&gt; set
</span><a href="GHC.Cmm.Dataflow.Collections.html#setDifference"><span class="hs-identifier hs-var">setDifference</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939590"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939589"><span class="hs-identifier hs-var">y</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-65"></span><span>  </span><span id="local-6989586621680939587"><span class="annot"><span class="annottext">setIntersection :: LabelSet -&gt; LabelSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Collections.html#setIntersection"><span class="hs-identifier hs-var hs-var hs-var hs-var">setIntersection</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939585"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939585"><span class="hs-identifier hs-var">x</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939584"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939584"><span class="hs-identifier hs-var">y</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-var">LS</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">UniqueSet -&gt; UniqueSet -&gt; UniqueSet
forall set. IsSet set =&gt; set -&gt; set -&gt; set
</span><a href="GHC.Cmm.Dataflow.Collections.html#setIntersection"><span class="hs-identifier hs-var">setIntersection</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939585"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939584"><span class="hs-identifier hs-var">y</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-66"></span><span>  </span><span id="local-6989586621680939582"><span class="annot"><span class="annottext">setIsSubsetOf :: LabelSet -&gt; LabelSet -&gt; Bool
</span><a href="GHC.Cmm.Dataflow.Collections.html#setIsSubsetOf"><span class="hs-identifier hs-var hs-var hs-var hs-var">setIsSubsetOf</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939580"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939580"><span class="hs-identifier hs-var">x</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939579"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939579"><span class="hs-identifier hs-var">y</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueSet -&gt; UniqueSet -&gt; Bool
forall set. IsSet set =&gt; set -&gt; set -&gt; Bool
</span><a href="GHC.Cmm.Dataflow.Collections.html#setIsSubsetOf"><span class="hs-identifier hs-var">setIsSubsetOf</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939580"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939579"><span class="hs-identifier hs-var">y</span></a></span><span>
</span><span id="line-67"></span><span>  </span><span id="local-6989586621680939577"><span class="annot"><span class="annottext">setFilter :: (ElemOf LabelSet -&gt; Bool) -&gt; LabelSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Collections.html#setFilter"><span class="hs-identifier hs-var hs-var hs-var hs-var">setFilter</span></a></span></span><span> </span><span id="local-6989586621680939575"><span class="annot"><span class="annottext">ElemOf LabelSet -&gt; Bool
</span><a href="#local-6989586621680939575"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939574"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939574"><span class="hs-identifier hs-var">s</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-var">LS</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(ElemOf UniqueSet -&gt; Bool) -&gt; UniqueSet -&gt; UniqueSet
forall set. IsSet set =&gt; (ElemOf set -&gt; Bool) -&gt; set -&gt; set
</span><a href="GHC.Cmm.Dataflow.Collections.html#setFilter"><span class="hs-identifier hs-var">setFilter</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">ElemOf LabelSet -&gt; Bool
Label -&gt; Bool
</span><a href="#local-6989586621680939575"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="annot"><span class="annottext">(Label -&gt; Bool) -&gt; (Int -&gt; Label) -&gt; Int -&gt; Bool
forall b c a. (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c
</span><a href="../../base/src/GHC.Base.html#."><span class="hs-operator hs-var">.</span></a></span><span> </span><span class="annot"><span class="annottext">Int -&gt; Label
</span><a href="GHC.Cmm.Dataflow.Label.html#mkHooplLabel"><span class="hs-identifier hs-var">mkHooplLabel</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939574"><span class="hs-identifier hs-var">s</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-68"></span><span>  </span><span id="local-6989586621680939571"><span class="annot"><span class="annottext">setFoldl :: forall b. (b -&gt; ElemOf LabelSet -&gt; b) -&gt; b -&gt; LabelSet -&gt; b
</span><a href="GHC.Cmm.Dataflow.Collections.html#setFoldl"><span class="hs-identifier hs-var hs-var hs-var hs-var">setFoldl</span></a></span></span><span> </span><span id="local-6989586621680939569"><span class="annot"><span class="annottext">b -&gt; ElemOf LabelSet -&gt; b
</span><a href="#local-6989586621680939569"><span class="hs-identifier hs-var">k</span></a></span></span><span> </span><span id="local-6989586621680939568"><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939568"><span class="hs-identifier hs-var">z</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939567"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939567"><span class="hs-identifier hs-var">s</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">(b -&gt; ElemOf UniqueSet -&gt; b) -&gt; b -&gt; UniqueSet -&gt; b
forall set b. IsSet set =&gt; (b -&gt; ElemOf set -&gt; b) -&gt; b -&gt; set -&gt; b
</span><a href="GHC.Cmm.Dataflow.Collections.html#setFoldl"><span class="hs-identifier hs-var">setFoldl</span></a></span><span> </span><span class="hs-special">(</span><span class="hs-glyph">\</span><span id="local-6989586621680939566"><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939566"><span class="hs-identifier hs-var">a</span></a></span></span><span> </span><span id="local-6989586621680939565"><span class="annot"><span class="annottext">ElemOf UniqueSet
</span><a href="#local-6989586621680939565"><span class="hs-identifier hs-var">v</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">b -&gt; ElemOf LabelSet -&gt; b
</span><a href="#local-6989586621680939569"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939566"><span class="hs-identifier hs-var">a</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Int -&gt; Label
</span><a href="GHC.Cmm.Dataflow.Label.html#mkHooplLabel"><span class="hs-identifier hs-var">mkHooplLabel</span></a></span><span> </span><span class="annot"><span class="annottext">Int
ElemOf UniqueSet
</span><a href="#local-6989586621680939565"><span class="hs-identifier hs-var">v</span></a></span><span class="hs-special">)</span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939568"><span class="hs-identifier hs-var">z</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939567"><span class="hs-identifier hs-var">s</span></a></span><span>
</span><span id="line-69"></span><span>  </span><span id="local-6989586621680939563"><span class="annot"><span class="annottext">setFoldr :: forall b. (ElemOf LabelSet -&gt; b -&gt; b) -&gt; b -&gt; LabelSet -&gt; b
</span><a href="GHC.Cmm.Dataflow.Collections.html#setFoldr"><span class="hs-identifier hs-var hs-var hs-var hs-var">setFoldr</span></a></span></span><span> </span><span id="local-6989586621680939561"><span class="annot"><span class="annottext">ElemOf LabelSet -&gt; b -&gt; b
</span><a href="#local-6989586621680939561"><span class="hs-identifier hs-var">k</span></a></span></span><span> </span><span id="local-6989586621680939560"><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939560"><span class="hs-identifier hs-var">z</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939559"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939559"><span class="hs-identifier hs-var">s</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">(ElemOf UniqueSet -&gt; b -&gt; b) -&gt; b -&gt; UniqueSet -&gt; b
forall set b. IsSet set =&gt; (ElemOf set -&gt; b -&gt; b) -&gt; b -&gt; set -&gt; b
</span><a href="GHC.Cmm.Dataflow.Collections.html#setFoldr"><span class="hs-identifier hs-var">setFoldr</span></a></span><span> </span><span class="hs-special">(</span><span class="hs-glyph">\</span><span id="local-6989586621680939558"><span class="annot"><span class="annottext">ElemOf UniqueSet
</span><a href="#local-6989586621680939558"><span class="hs-identifier hs-var">v</span></a></span></span><span> </span><span id="local-6989586621680939557"><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939557"><span class="hs-identifier hs-var">a</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">ElemOf LabelSet -&gt; b -&gt; b
</span><a href="#local-6989586621680939561"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Int -&gt; Label
</span><a href="GHC.Cmm.Dataflow.Label.html#mkHooplLabel"><span class="hs-identifier hs-var">mkHooplLabel</span></a></span><span> </span><span class="annot"><span class="annottext">Int
ElemOf UniqueSet
</span><a href="#local-6989586621680939558"><span class="hs-identifier hs-var">v</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939557"><span class="hs-identifier hs-var">a</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939560"><span class="hs-identifier hs-var">z</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939559"><span class="hs-identifier hs-var">s</span></a></span><span>
</span><span id="line-70"></span><span>
</span><span id="line-71"></span><span>  </span><span id="local-6989586621680939555"><span class="annot"><span class="annottext">setElems :: LabelSet -&gt; [ElemOf LabelSet]
</span><a href="GHC.Cmm.Dataflow.Collections.html#setElems"><span class="hs-identifier hs-var hs-var hs-var hs-var">setElems</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-type">LS</span></a></span><span> </span><span id="local-6989586621680939553"><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939553"><span class="hs-identifier hs-var">s</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">(Int -&gt; Label) -&gt; [Int] -&gt; [Label]
forall a b. (a -&gt; b) -&gt; [a] -&gt; [b]
</span><a href="../../base/src/GHC.Base.html#map"><span class="hs-identifier hs-var">map</span></a></span><span> </span><span class="annot"><span class="annottext">Int -&gt; Label
</span><a href="GHC.Cmm.Dataflow.Label.html#mkHooplLabel"><span class="hs-identifier hs-var">mkHooplLabel</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">UniqueSet -&gt; [ElemOf UniqueSet]
forall set. IsSet set =&gt; set -&gt; [ElemOf set]
</span><a href="GHC.Cmm.Dataflow.Collections.html#setElems"><span class="hs-identifier hs-var">setElems</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueSet
</span><a href="#local-6989586621680939553"><span class="hs-identifier hs-var">s</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-72"></span><span>  </span><span id="local-6989586621680939551"><span class="annot"><span class="annottext">setFromList :: [ElemOf LabelSet] -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Collections.html#setFromList"><span class="hs-identifier hs-var hs-var hs-var hs-var">setFromList</span></a></span></span><span> </span><span id="local-6989586621680939549"><span class="annot"><span class="annottext">[ElemOf LabelSet]
</span><a href="#local-6989586621680939549"><span class="hs-identifier hs-var">ks</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueSet -&gt; LabelSet
</span><a href="GHC.Cmm.Dataflow.Label.html#LS"><span class="hs-identifier hs-var">LS</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">[ElemOf UniqueSet] -&gt; UniqueSet
forall set. IsSet set =&gt; [ElemOf set] -&gt; set
</span><a href="GHC.Cmm.Dataflow.Collections.html#setFromList"><span class="hs-identifier hs-var">setFromList</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(Label -&gt; Int) -&gt; [Label] -&gt; [Int]
forall a b. (a -&gt; b) -&gt; [a] -&gt; [b]
</span><a href="../../base/src/GHC.Base.html#map"><span class="hs-identifier hs-var">map</span></a></span><span> </span><span class="annot"><span class="annottext">Label -&gt; Int
</span><a href="GHC.Cmm.Dataflow.Label.html#lblToUnique"><span class="hs-identifier hs-var hs-var">lblToUnique</span></a></span><span> </span><span class="annot"><span class="annottext">[ElemOf LabelSet]
[Label]
</span><a href="#local-6989586621680939549"><span class="hs-identifier hs-var">ks</span></a></span><span class="hs-special">)</span><span class="hs-special">)</span><span>
</span><span id="line-73"></span><span>
</span><span id="line-74"></span><span class="hs-comment">-----------------------------------------------------------------------------</span><span>
</span><span id="line-75"></span><span class="hs-comment">-- LabelMap</span><span>
</span><span id="line-76"></span><span>
</span><span id="line-77"></span><span class="hs-keyword">newtype</span><span> </span><span id="LabelMap"><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LabelMap"><span class="hs-identifier hs-var">LabelMap</span></a></span></span><span> </span><span id="local-6989586621680940007"><span class="annot"><a href="#local-6989586621680940007"><span class="hs-identifier hs-type">v</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span id="LM"><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Collections.html#UniqueMap"><span class="hs-identifier hs-type">UniqueMap</span></a></span><span> </span><span class="annot"><a href="#local-6989586621680940007"><span class="hs-identifier hs-type">v</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-78"></span><span>  </span><span class="hs-keyword">deriving</span><span> </span><span class="hs-special">(</span><span id="local-6989586621680939540"><span id="local-6989586621680939545"><span class="annot"><span class="annottext">LabelMap v -&gt; LabelMap v -&gt; Bool
(LabelMap v -&gt; LabelMap v -&gt; Bool)
-&gt; (LabelMap v -&gt; LabelMap v -&gt; Bool) -&gt; Eq (LabelMap v)
forall v. Eq v =&gt; LabelMap v -&gt; LabelMap v -&gt; Bool
forall a. (a -&gt; a -&gt; Bool) -&gt; (a -&gt; a -&gt; Bool) -&gt; Eq a
/= :: LabelMap v -&gt; LabelMap v -&gt; Bool
$c/= :: forall v. Eq v =&gt; LabelMap v -&gt; LabelMap v -&gt; Bool
== :: LabelMap v -&gt; LabelMap v -&gt; Bool
$c== :: forall v. Eq v =&gt; LabelMap v -&gt; LabelMap v -&gt; Bool
</span><span class="hs-identifier hs-var hs-var hs-var hs-var hs-var hs-var">Eq</span></span></span></span><span class="hs-special">,</span><span> </span><span id="local-6989586621680939506"><span id="local-6989586621680939510"><span id="local-6989586621680939514"><span id="local-6989586621680939518"><span id="local-6989586621680939522"><span id="local-6989586621680939526"><span id="local-6989586621680939531"><span class="annot"><span class="annottext">Eq (LabelMap v)
Eq (LabelMap v)
-&gt; (LabelMap v -&gt; LabelMap v -&gt; Ordering)
-&gt; (LabelMap v -&gt; LabelMap v -&gt; Bool)
-&gt; (LabelMap v -&gt; LabelMap v -&gt; Bool)
-&gt; (LabelMap v -&gt; LabelMap v -&gt; Bool)
-&gt; (LabelMap v -&gt; LabelMap v -&gt; Bool)
-&gt; (LabelMap v -&gt; LabelMap v -&gt; LabelMap v)
-&gt; (LabelMap v -&gt; LabelMap v -&gt; LabelMap v)
-&gt; Ord (LabelMap v)
LabelMap v -&gt; LabelMap v -&gt; Bool
LabelMap v -&gt; LabelMap v -&gt; Ordering
LabelMap v -&gt; LabelMap v -&gt; LabelMap v
forall a.
Eq a
-&gt; (a -&gt; a -&gt; Ordering)
-&gt; (a -&gt; a -&gt; Bool)
-&gt; (a -&gt; a -&gt; Bool)
-&gt; (a -&gt; a -&gt; Bool)
-&gt; (a -&gt; a -&gt; Bool)
-&gt; (a -&gt; a -&gt; a)
-&gt; (a -&gt; a -&gt; a)
-&gt; Ord a
forall {v}. Ord v =&gt; Eq (LabelMap v)
forall v. Ord v =&gt; LabelMap v -&gt; LabelMap v -&gt; Bool
forall v. Ord v =&gt; LabelMap v -&gt; LabelMap v -&gt; Ordering
forall v. Ord v =&gt; LabelMap v -&gt; LabelMap v -&gt; LabelMap v
min :: LabelMap v -&gt; LabelMap v -&gt; LabelMap v
$cmin :: forall v. Ord v =&gt; LabelMap v -&gt; LabelMap v -&gt; LabelMap v
max :: LabelMap v -&gt; LabelMap v -&gt; LabelMap v
$cmax :: forall v. Ord v =&gt; LabelMap v -&gt; LabelMap v -&gt; LabelMap v
&gt;= :: LabelMap v -&gt; LabelMap v -&gt; Bool
$c&gt;= :: forall v. Ord v =&gt; LabelMap v -&gt; LabelMap v -&gt; Bool
&gt; :: LabelMap v -&gt; LabelMap v -&gt; Bool
$c&gt; :: forall v. Ord v =&gt; LabelMap v -&gt; LabelMap v -&gt; Bool
&lt;= :: LabelMap v -&gt; LabelMap v -&gt; Bool
$c&lt;= :: forall v. Ord v =&gt; LabelMap v -&gt; LabelMap v -&gt; Bool
&lt; :: LabelMap v -&gt; LabelMap v -&gt; Bool
$c&lt; :: forall v. Ord v =&gt; LabelMap v -&gt; LabelMap v -&gt; Bool
compare :: LabelMap v -&gt; LabelMap v -&gt; Ordering
$ccompare :: forall v. Ord v =&gt; LabelMap v -&gt; LabelMap v -&gt; Ordering
</span><span class="hs-identifier hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var">Ord</span></span></span></span></span></span></span></span></span><span class="hs-special">,</span><span> </span><span id="local-6989586621680939493"><span id="local-6989586621680939495"><span id="local-6989586621680939500"><span class="annot"><span class="annottext">Int -&gt; LabelMap v -&gt; ShowS
[LabelMap v] -&gt; ShowS
LabelMap v -&gt; String
(Int -&gt; LabelMap v -&gt; ShowS)
-&gt; (LabelMap v -&gt; String)
-&gt; ([LabelMap v] -&gt; ShowS)
-&gt; Show (LabelMap v)
forall v. Show v =&gt; Int -&gt; LabelMap v -&gt; ShowS
forall v. Show v =&gt; [LabelMap v] -&gt; ShowS
forall v. Show v =&gt; LabelMap v -&gt; String
forall a.
(Int -&gt; a -&gt; ShowS) -&gt; (a -&gt; String) -&gt; ([a] -&gt; ShowS) -&gt; Show a
showList :: [LabelMap v] -&gt; ShowS
$cshowList :: forall v. Show v =&gt; [LabelMap v] -&gt; ShowS
show :: LabelMap v -&gt; String
$cshow :: forall v. Show v =&gt; LabelMap v -&gt; String
showsPrec :: Int -&gt; LabelMap v -&gt; ShowS
$cshowsPrec :: forall v. Show v =&gt; Int -&gt; LabelMap v -&gt; ShowS
</span><a href="../../base/src/GHC.Show.html#Show"><span class="hs-identifier hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var">Show</span></a></span></span></span></span><span class="hs-special">,</span><span> </span><span id="local-6989586621680939486"><span id="local-6989586621680939491"><span class="annot"><span class="annottext">(forall a b. (a -&gt; b) -&gt; LabelMap a -&gt; LabelMap b)
-&gt; (forall a b. a -&gt; LabelMap b -&gt; LabelMap a) -&gt; Functor LabelMap
forall a b. a -&gt; LabelMap b -&gt; LabelMap a
forall a b. (a -&gt; b) -&gt; LabelMap a -&gt; LabelMap b
forall (f :: * -&gt; *).
(forall a b. (a -&gt; b) -&gt; f a -&gt; f b)
-&gt; (forall a b. a -&gt; f b -&gt; f a) -&gt; Functor f
&lt;$ :: forall a b. a -&gt; LabelMap b -&gt; LabelMap a
$c&lt;$ :: forall a b. a -&gt; LabelMap b -&gt; LabelMap a
fmap :: forall a b. (a -&gt; b) -&gt; LabelMap a -&gt; LabelMap b
$cfmap :: forall a b. (a -&gt; b) -&gt; LabelMap a -&gt; LabelMap b
</span><a href="../../base/src/GHC.Base.html#Functor"><span class="hs-identifier hs-var hs-var hs-var hs-var hs-var hs-var">Functor</span></a></span></span></span><span class="hs-special">,</span><span> </span><span id="local-6989586621680939385"><span id="local-6989586621680939393"><span id="local-6989586621680939401"><span id="local-6989586621680939409"><span id="local-6989586621680939417"><span id="local-6989586621680939423"><span id="local-6989586621680939427"><span id="local-6989586621680939431"><span id="local-6989586621680939435"><span id="local-6989586621680939439"><span id="local-6989586621680939443"><span id="local-6989586621680939447"><span id="local-6989586621680939451"><span id="local-6989586621680939455"><span id="local-6989586621680939461"><span id="local-6989586621680939469"><span id="local-6989586621680939478"><span class="annot"><span class="annottext">(forall m. Monoid m =&gt; LabelMap m -&gt; m)
-&gt; (forall m a. Monoid m =&gt; (a -&gt; m) -&gt; LabelMap a -&gt; m)
-&gt; (forall m a. Monoid m =&gt; (a -&gt; m) -&gt; LabelMap a -&gt; m)
-&gt; (forall a b. (a -&gt; b -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b)
-&gt; (forall a b. (a -&gt; b -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b)
-&gt; (forall b a. (b -&gt; a -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b)
-&gt; (forall b a. (b -&gt; a -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b)
-&gt; (forall a. (a -&gt; a -&gt; a) -&gt; LabelMap a -&gt; a)
-&gt; (forall a. (a -&gt; a -&gt; a) -&gt; LabelMap a -&gt; a)
-&gt; (forall a. LabelMap a -&gt; [a])
-&gt; (forall a. LabelMap a -&gt; Bool)
-&gt; (forall a. LabelMap a -&gt; Int)
-&gt; (forall a. Eq a =&gt; a -&gt; LabelMap a -&gt; Bool)
-&gt; (forall a. Ord a =&gt; LabelMap a -&gt; a)
-&gt; (forall a. Ord a =&gt; LabelMap a -&gt; a)
-&gt; (forall a. Num a =&gt; LabelMap a -&gt; a)
-&gt; (forall a. Num a =&gt; LabelMap a -&gt; a)
-&gt; Foldable LabelMap
forall a. Eq a =&gt; a -&gt; LabelMap a -&gt; Bool
forall a. Num a =&gt; LabelMap a -&gt; a
forall a. Ord a =&gt; LabelMap a -&gt; a
forall m. Monoid m =&gt; LabelMap m -&gt; m
forall a. LabelMap a -&gt; Bool
forall a. LabelMap a -&gt; Int
forall a. LabelMap a -&gt; [a]
forall a. (a -&gt; a -&gt; a) -&gt; LabelMap a -&gt; a
forall m a. Monoid m =&gt; (a -&gt; m) -&gt; LabelMap a -&gt; m
forall b a. (b -&gt; a -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b
forall a b. (a -&gt; b -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b
forall (t :: * -&gt; *).
(forall m. Monoid m =&gt; t m -&gt; m)
-&gt; (forall m a. Monoid m =&gt; (a -&gt; m) -&gt; t a -&gt; m)
-&gt; (forall m a. Monoid m =&gt; (a -&gt; m) -&gt; t a -&gt; m)
-&gt; (forall a b. (a -&gt; b -&gt; b) -&gt; b -&gt; t a -&gt; b)
-&gt; (forall a b. (a -&gt; b -&gt; b) -&gt; b -&gt; t a -&gt; b)
-&gt; (forall b a. (b -&gt; a -&gt; b) -&gt; b -&gt; t a -&gt; b)
-&gt; (forall b a. (b -&gt; a -&gt; b) -&gt; b -&gt; t a -&gt; b)
-&gt; (forall a. (a -&gt; a -&gt; a) -&gt; t a -&gt; a)
-&gt; (forall a. (a -&gt; a -&gt; a) -&gt; t a -&gt; a)
-&gt; (forall a. t a -&gt; [a])
-&gt; (forall a. t a -&gt; Bool)
-&gt; (forall a. t a -&gt; Int)
-&gt; (forall a. Eq a =&gt; a -&gt; t a -&gt; Bool)
-&gt; (forall a. Ord a =&gt; t a -&gt; a)
-&gt; (forall a. Ord a =&gt; t a -&gt; a)
-&gt; (forall a. Num a =&gt; t a -&gt; a)
-&gt; (forall a. Num a =&gt; t a -&gt; a)
-&gt; Foldable t
product :: forall a. Num a =&gt; LabelMap a -&gt; a
$cproduct :: forall a. Num a =&gt; LabelMap a -&gt; a
sum :: forall a. Num a =&gt; LabelMap a -&gt; a
$csum :: forall a. Num a =&gt; LabelMap a -&gt; a
minimum :: forall a. Ord a =&gt; LabelMap a -&gt; a
$cminimum :: forall a. Ord a =&gt; LabelMap a -&gt; a
maximum :: forall a. Ord a =&gt; LabelMap a -&gt; a
$cmaximum :: forall a. Ord a =&gt; LabelMap a -&gt; a
elem :: forall a. Eq a =&gt; a -&gt; LabelMap a -&gt; Bool
$celem :: forall a. Eq a =&gt; a -&gt; LabelMap a -&gt; Bool
length :: forall a. LabelMap a -&gt; Int
$clength :: forall a. LabelMap a -&gt; Int
null :: forall a. LabelMap a -&gt; Bool
$cnull :: forall a. LabelMap a -&gt; Bool
toList :: forall a. LabelMap a -&gt; [a]
$ctoList :: forall a. LabelMap a -&gt; [a]
foldl1 :: forall a. (a -&gt; a -&gt; a) -&gt; LabelMap a -&gt; a
$cfoldl1 :: forall a. (a -&gt; a -&gt; a) -&gt; LabelMap a -&gt; a
foldr1 :: forall a. (a -&gt; a -&gt; a) -&gt; LabelMap a -&gt; a
$cfoldr1 :: forall a. (a -&gt; a -&gt; a) -&gt; LabelMap a -&gt; a
foldl' :: forall b a. (b -&gt; a -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b
$cfoldl' :: forall b a. (b -&gt; a -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b
foldl :: forall b a. (b -&gt; a -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b
$cfoldl :: forall b a. (b -&gt; a -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b
foldr' :: forall a b. (a -&gt; b -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b
$cfoldr' :: forall a b. (a -&gt; b -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b
foldr :: forall a b. (a -&gt; b -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b
$cfoldr :: forall a b. (a -&gt; b -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b
foldMap' :: forall m a. Monoid m =&gt; (a -&gt; m) -&gt; LabelMap a -&gt; m
$cfoldMap' :: forall m a. Monoid m =&gt; (a -&gt; m) -&gt; LabelMap a -&gt; m
foldMap :: forall m a. Monoid m =&gt; (a -&gt; m) -&gt; LabelMap a -&gt; m
$cfoldMap :: forall m a. Monoid m =&gt; (a -&gt; m) -&gt; LabelMap a -&gt; m
fold :: forall m. Monoid m =&gt; LabelMap m -&gt; m
$cfold :: forall m. Monoid m =&gt; LabelMap m -&gt; m
</span><a href="../../base/src/Data.Foldable.html#Foldable"><span class="hs-identifier hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var">Foldable</span></a></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span><span class="hs-special">,</span><span> </span><span id="local-6989586621680939361"><span id="local-6989586621680939363"><span id="local-6989586621680939365"><span id="local-6989586621680939373"><span class="annot"><span class="annottext">Functor LabelMap
Foldable LabelMap
Functor LabelMap
-&gt; Foldable LabelMap
-&gt; (forall (f :: * -&gt; *) a b.
    Applicative f =&gt;
    (a -&gt; f b) -&gt; LabelMap a -&gt; f (LabelMap b))
-&gt; (forall (f :: * -&gt; *) a.
    Applicative f =&gt;
    LabelMap (f a) -&gt; f (LabelMap a))
-&gt; (forall (m :: * -&gt; *) a b.
    Monad m =&gt;
    (a -&gt; m b) -&gt; LabelMap a -&gt; m (LabelMap b))
-&gt; (forall (m :: * -&gt; *) a.
    Monad m =&gt;
    LabelMap (m a) -&gt; m (LabelMap a))
-&gt; Traversable LabelMap
forall (t :: * -&gt; *).
Functor t
-&gt; Foldable t
-&gt; (forall (f :: * -&gt; *) a b.
    Applicative f =&gt;
    (a -&gt; f b) -&gt; t a -&gt; f (t b))
-&gt; (forall (f :: * -&gt; *) a. Applicative f =&gt; t (f a) -&gt; f (t a))
-&gt; (forall (m :: * -&gt; *) a b.
    Monad m =&gt;
    (a -&gt; m b) -&gt; t a -&gt; m (t b))
-&gt; (forall (m :: * -&gt; *) a. Monad m =&gt; t (m a) -&gt; m (t a))
-&gt; Traversable t
forall (m :: * -&gt; *) a. Monad m =&gt; LabelMap (m a) -&gt; m (LabelMap a)
forall (f :: * -&gt; *) a.
Applicative f =&gt;
LabelMap (f a) -&gt; f (LabelMap a)
forall (m :: * -&gt; *) a b.
Monad m =&gt;
(a -&gt; m b) -&gt; LabelMap a -&gt; m (LabelMap b)
forall (f :: * -&gt; *) a b.
Applicative f =&gt;
(a -&gt; f b) -&gt; LabelMap a -&gt; f (LabelMap b)
sequence :: forall (m :: * -&gt; *) a. Monad m =&gt; LabelMap (m a) -&gt; m (LabelMap a)
$csequence :: forall (m :: * -&gt; *) a. Monad m =&gt; LabelMap (m a) -&gt; m (LabelMap a)
mapM :: forall (m :: * -&gt; *) a b.
Monad m =&gt;
(a -&gt; m b) -&gt; LabelMap a -&gt; m (LabelMap b)
$cmapM :: forall (m :: * -&gt; *) a b.
Monad m =&gt;
(a -&gt; m b) -&gt; LabelMap a -&gt; m (LabelMap b)
sequenceA :: forall (f :: * -&gt; *) a.
Applicative f =&gt;
LabelMap (f a) -&gt; f (LabelMap a)
$csequenceA :: forall (f :: * -&gt; *) a.
Applicative f =&gt;
LabelMap (f a) -&gt; f (LabelMap a)
traverse :: forall (f :: * -&gt; *) a b.
Applicative f =&gt;
(a -&gt; f b) -&gt; LabelMap a -&gt; f (LabelMap b)
$ctraverse :: forall (f :: * -&gt; *) a b.
Applicative f =&gt;
(a -&gt; f b) -&gt; LabelMap a -&gt; f (LabelMap b)
</span><a href="../../base/src/Data.Traversable.html#Traversable"><span class="hs-identifier hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var">Traversable</span></a></span></span></span></span></span><span class="hs-special">)</span><span>
</span><span id="line-79"></span><span>
</span><span id="line-80"></span><span class="hs-keyword">instance</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Collections.html#IsMap"><span class="hs-identifier hs-type">IsMap</span></a></span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LabelMap"><span class="hs-identifier hs-type">LabelMap</span></a></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-81"></span><span>  </span><span class="hs-keyword">type</span><span> </span><span id="KeyOf"><span class="annot"><a href="GHC.Cmm.Dataflow.Collections.html#KeyOf"><span class="hs-identifier hs-var">KeyOf</span></a></span></span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LabelMap"><span class="hs-identifier hs-type">LabelMap</span></a></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span>
</span><span id="line-82"></span><span>
</span><span id="line-83"></span><span>  </span><span id="local-6989586621680939324"><span class="annot"><span class="annottext">mapNull :: forall a. LabelMap a -&gt; Bool
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapNull"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapNull</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939322"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939322"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; Bool
forall (map :: * -&gt; *) a. IsMap map =&gt; map a -&gt; Bool
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapNull"><span class="hs-identifier hs-var">mapNull</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939322"><span class="hs-identifier hs-var">m</span></a></span><span>
</span><span id="line-84"></span><span>  </span><span id="local-6989586621680939320"><span class="annot"><span class="annottext">mapSize :: forall a. LabelMap a -&gt; Int
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapSize"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapSize</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939318"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939318"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; Int
forall (map :: * -&gt; *) a. IsMap map =&gt; map a -&gt; Int
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapSize"><span class="hs-identifier hs-var">mapSize</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939318"><span class="hs-identifier hs-var">m</span></a></span><span>
</span><span id="line-85"></span><span>  </span><span id="local-6989586621680939316"><span class="annot"><span class="annottext">mapMember :: forall a. KeyOf LabelMap -&gt; LabelMap a -&gt; Bool
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapMember"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapMember</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span id="local-6989586621680939314"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939314"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939313"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939313"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">KeyOf UniqueMap -&gt; UniqueMap a -&gt; Bool
forall (map :: * -&gt; *) a. IsMap map =&gt; KeyOf map -&gt; map a -&gt; Bool
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapMember"><span class="hs-identifier hs-var">mapMember</span></a></span><span> </span><span class="annot"><span class="annottext">Int
KeyOf UniqueMap
</span><a href="#local-6989586621680939314"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939313"><span class="hs-identifier hs-var">m</span></a></span><span>
</span><span id="line-86"></span><span>  </span><span id="local-6989586621680939311"><span class="annot"><span class="annottext">mapLookup :: forall a. KeyOf LabelMap -&gt; LabelMap a -&gt; Maybe a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapLookup"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapLookup</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span id="local-6989586621680939309"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939309"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939308"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939308"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">KeyOf UniqueMap -&gt; UniqueMap a -&gt; Maybe a
forall (map :: * -&gt; *) a.
IsMap map =&gt;
KeyOf map -&gt; map a -&gt; Maybe a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapLookup"><span class="hs-identifier hs-var">mapLookup</span></a></span><span> </span><span class="annot"><span class="annottext">Int
KeyOf UniqueMap
</span><a href="#local-6989586621680939309"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939308"><span class="hs-identifier hs-var">m</span></a></span><span>
</span><span id="line-87"></span><span>  </span><span id="local-6989586621680939306"><span class="annot"><span class="annottext">mapFindWithDefault :: forall a. a -&gt; KeyOf LabelMap -&gt; LabelMap a -&gt; a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFindWithDefault"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapFindWithDefault</span></a></span></span><span> </span><span id="local-6989586621680939304"><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939304"><span class="hs-identifier hs-var">def</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span id="local-6989586621680939303"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939303"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939302"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939302"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">a -&gt; KeyOf UniqueMap -&gt; UniqueMap a -&gt; a
forall (map :: * -&gt; *) a. IsMap map =&gt; a -&gt; KeyOf map -&gt; map a -&gt; a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFindWithDefault"><span class="hs-identifier hs-var">mapFindWithDefault</span></a></span><span> </span><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939304"><span class="hs-identifier hs-var">def</span></a></span><span> </span><span class="annot"><span class="annottext">Int
KeyOf UniqueMap
</span><a href="#local-6989586621680939303"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939302"><span class="hs-identifier hs-var">m</span></a></span><span>
</span><span id="line-88"></span><span>
</span><span id="line-89"></span><span>  </span><span id="local-6989586621680939300"><span class="annot"><span class="annottext">mapEmpty :: forall a. LabelMap a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapEmpty"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapEmpty</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
forall (map :: * -&gt; *) a. IsMap map =&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapEmpty"><span class="hs-identifier hs-var">mapEmpty</span></a></span><span>
</span><span id="line-90"></span><span>  </span><span id="local-6989586621680939297"><span class="annot"><span class="annottext">mapSingleton :: forall a. KeyOf LabelMap -&gt; a -&gt; LabelMap a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapSingleton"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapSingleton</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span id="local-6989586621680939295"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939295"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">)</span><span> </span><span id="local-6989586621680939294"><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939294"><span class="hs-identifier hs-var">v</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">KeyOf UniqueMap -&gt; a -&gt; UniqueMap a
forall (map :: * -&gt; *) a. IsMap map =&gt; KeyOf map -&gt; a -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapSingleton"><span class="hs-identifier hs-var">mapSingleton</span></a></span><span> </span><span class="annot"><span class="annottext">Int
KeyOf UniqueMap
</span><a href="#local-6989586621680939295"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939294"><span class="hs-identifier hs-var">v</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-91"></span><span>  </span><span id="local-6989586621680939292"><span class="annot"><span class="annottext">mapInsert :: forall a. KeyOf LabelMap -&gt; a -&gt; LabelMap a -&gt; LabelMap a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapInsert"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapInsert</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span id="local-6989586621680939290"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939290"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">)</span><span> </span><span id="local-6989586621680939289"><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939289"><span class="hs-identifier hs-var">v</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939288"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939288"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">KeyOf UniqueMap -&gt; a -&gt; UniqueMap a -&gt; UniqueMap a
forall (map :: * -&gt; *) a.
IsMap map =&gt;
KeyOf map -&gt; a -&gt; map a -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapInsert"><span class="hs-identifier hs-var">mapInsert</span></a></span><span> </span><span class="annot"><span class="annottext">Int
KeyOf UniqueMap
</span><a href="#local-6989586621680939290"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939289"><span class="hs-identifier hs-var">v</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939288"><span class="hs-identifier hs-var">m</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-92"></span><span>  </span><span id="local-6989586621680939286"><span class="annot"><span class="annottext">mapInsertWith :: forall a.
(a -&gt; a -&gt; a) -&gt; KeyOf LabelMap -&gt; a -&gt; LabelMap a -&gt; LabelMap a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapInsertWith"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapInsertWith</span></a></span></span><span> </span><span id="local-6989586621680939284"><span class="annot"><span class="annottext">a -&gt; a -&gt; a
</span><a href="#local-6989586621680939284"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span id="local-6989586621680939283"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939283"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">)</span><span> </span><span id="local-6989586621680939282"><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939282"><span class="hs-identifier hs-var">v</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939281"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939281"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(a -&gt; a -&gt; a) -&gt; KeyOf UniqueMap -&gt; a -&gt; UniqueMap a -&gt; UniqueMap a
forall (map :: * -&gt; *) a.
IsMap map =&gt;
(a -&gt; a -&gt; a) -&gt; KeyOf map -&gt; a -&gt; map a -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapInsertWith"><span class="hs-identifier hs-var">mapInsertWith</span></a></span><span> </span><span class="annot"><span class="annottext">a -&gt; a -&gt; a
</span><a href="#local-6989586621680939284"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="annot"><span class="annottext">Int
KeyOf UniqueMap
</span><a href="#local-6989586621680939283"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939282"><span class="hs-identifier hs-var">v</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939281"><span class="hs-identifier hs-var">m</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-93"></span><span>  </span><span id="local-6989586621680939279"><span class="annot"><span class="annottext">mapDelete :: forall a. KeyOf LabelMap -&gt; LabelMap a -&gt; LabelMap a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapDelete"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapDelete</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span id="local-6989586621680939277"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939277"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939276"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939276"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">KeyOf UniqueMap -&gt; UniqueMap a -&gt; UniqueMap a
forall (map :: * -&gt; *) a. IsMap map =&gt; KeyOf map -&gt; map a -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapDelete"><span class="hs-identifier hs-var">mapDelete</span></a></span><span> </span><span class="annot"><span class="annottext">Int
KeyOf UniqueMap
</span><a href="#local-6989586621680939277"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939276"><span class="hs-identifier hs-var">m</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-94"></span><span>  </span><span id="local-6989586621680939274"><span class="annot"><span class="annottext">mapAlter :: forall a.
(Maybe a -&gt; Maybe a) -&gt; KeyOf LabelMap -&gt; LabelMap a -&gt; LabelMap a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapAlter"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapAlter</span></a></span></span><span> </span><span id="local-6989586621680939272"><span class="annot"><span class="annottext">Maybe a -&gt; Maybe a
</span><a href="#local-6989586621680939272"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span id="local-6989586621680939271"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939271"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939270"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939270"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(Maybe a -&gt; Maybe a)
-&gt; KeyOf UniqueMap -&gt; UniqueMap a -&gt; UniqueMap a
forall (map :: * -&gt; *) a.
IsMap map =&gt;
(Maybe a -&gt; Maybe a) -&gt; KeyOf map -&gt; map a -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapAlter"><span class="hs-identifier hs-var">mapAlter</span></a></span><span> </span><span class="annot"><span class="annottext">Maybe a -&gt; Maybe a
</span><a href="#local-6989586621680939272"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="annot"><span class="annottext">Int
KeyOf UniqueMap
</span><a href="#local-6989586621680939271"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939270"><span class="hs-identifier hs-var">m</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-95"></span><span>  </span><span id="local-6989586621680939268"><span class="annot"><span class="annottext">mapAdjust :: forall a. (a -&gt; a) -&gt; KeyOf LabelMap -&gt; LabelMap a -&gt; LabelMap a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapAdjust"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapAdjust</span></a></span></span><span> </span><span id="local-6989586621680939266"><span class="annot"><span class="annottext">a -&gt; a
</span><a href="#local-6989586621680939266"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span id="local-6989586621680939265"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939265"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939264"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939264"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(a -&gt; a) -&gt; KeyOf UniqueMap -&gt; UniqueMap a -&gt; UniqueMap a
forall (map :: * -&gt; *) a.
IsMap map =&gt;
(a -&gt; a) -&gt; KeyOf map -&gt; map a -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapAdjust"><span class="hs-identifier hs-var">mapAdjust</span></a></span><span> </span><span class="annot"><span class="annottext">a -&gt; a
</span><a href="#local-6989586621680939266"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="annot"><span class="annottext">Int
KeyOf UniqueMap
</span><a href="#local-6989586621680939265"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939264"><span class="hs-identifier hs-var">m</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-96"></span><span>
</span><span id="line-97"></span><span>  </span><span id="local-6989586621680939262"><span class="annot"><span class="annottext">mapUnion :: forall a. LabelMap a -&gt; LabelMap a -&gt; LabelMap a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapUnion"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapUnion</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939260"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939260"><span class="hs-identifier hs-var">x</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939259"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939259"><span class="hs-identifier hs-var">y</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">UniqueMap a -&gt; UniqueMap a -&gt; UniqueMap a
forall (map :: * -&gt; *) a. IsMap map =&gt; map a -&gt; map a -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapUnion"><span class="hs-identifier hs-var">mapUnion</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939260"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939259"><span class="hs-identifier hs-var">y</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-98"></span><span>  </span><span id="local-6989586621680939257"><span class="annot"><span class="annottext">mapUnionWithKey :: forall a.
(KeyOf LabelMap -&gt; a -&gt; a -&gt; a)
-&gt; LabelMap a -&gt; LabelMap a -&gt; LabelMap a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapUnionWithKey"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapUnionWithKey</span></a></span></span><span> </span><span id="local-6989586621680939255"><span class="annot"><span class="annottext">KeyOf LabelMap -&gt; a -&gt; a -&gt; a
</span><a href="#local-6989586621680939255"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939254"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939254"><span class="hs-identifier hs-var">x</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939253"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939253"><span class="hs-identifier hs-var">y</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(KeyOf UniqueMap -&gt; a -&gt; a -&gt; a)
-&gt; UniqueMap a -&gt; UniqueMap a -&gt; UniqueMap a
forall (map :: * -&gt; *) a.
IsMap map =&gt;
(KeyOf map -&gt; a -&gt; a -&gt; a) -&gt; map a -&gt; map a -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapUnionWithKey"><span class="hs-identifier hs-var">mapUnionWithKey</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">KeyOf LabelMap -&gt; a -&gt; a -&gt; a
Label -&gt; a -&gt; a -&gt; a
</span><a href="#local-6989586621680939255"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="annot"><span class="annottext">(Label -&gt; a -&gt; a -&gt; a) -&gt; (Int -&gt; Label) -&gt; Int -&gt; a -&gt; a -&gt; a
forall b c a. (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c
</span><a href="../../base/src/GHC.Base.html#."><span class="hs-operator hs-var">.</span></a></span><span> </span><span class="annot"><span class="annottext">Int -&gt; Label
</span><a href="GHC.Cmm.Dataflow.Label.html#mkHooplLabel"><span class="hs-identifier hs-var">mkHooplLabel</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939254"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939253"><span class="hs-identifier hs-var">y</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-99"></span><span>  </span><span id="local-6989586621680939251"><span class="annot"><span class="annottext">mapDifference :: forall a. LabelMap a -&gt; LabelMap a -&gt; LabelMap a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapDifference"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapDifference</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939249"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939249"><span class="hs-identifier hs-var">x</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939248"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939248"><span class="hs-identifier hs-var">y</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">UniqueMap a -&gt; UniqueMap a -&gt; UniqueMap a
forall (map :: * -&gt; *) a. IsMap map =&gt; map a -&gt; map a -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapDifference"><span class="hs-identifier hs-var">mapDifference</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939249"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939248"><span class="hs-identifier hs-var">y</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-100"></span><span>  </span><span id="local-6989586621680939246"><span class="annot"><span class="annottext">mapIntersection :: forall a. LabelMap a -&gt; LabelMap a -&gt; LabelMap a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapIntersection"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapIntersection</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939244"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939244"><span class="hs-identifier hs-var">x</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939243"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939243"><span class="hs-identifier hs-var">y</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">UniqueMap a -&gt; UniqueMap a -&gt; UniqueMap a
forall (map :: * -&gt; *) a. IsMap map =&gt; map a -&gt; map a -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapIntersection"><span class="hs-identifier hs-var">mapIntersection</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939244"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939243"><span class="hs-identifier hs-var">y</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-101"></span><span>  </span><span id="local-6989586621680939239"><span class="annot"><span class="annottext">mapIsSubmapOf :: forall v. Eq v =&gt; LabelMap v -&gt; LabelMap v -&gt; Bool
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapIsSubmapOf"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapIsSubmapOf</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939237"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939237"><span class="hs-identifier hs-var">x</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939236"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939236"><span class="hs-identifier hs-var">y</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; UniqueMap a -&gt; Bool
forall (map :: * -&gt; *) a.
(IsMap map, Eq a) =&gt;
map a -&gt; map a -&gt; Bool
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapIsSubmapOf"><span class="hs-identifier hs-var">mapIsSubmapOf</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939237"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939236"><span class="hs-identifier hs-var">y</span></a></span><span>
</span><span id="line-102"></span><span>
</span><span id="line-103"></span><span>  </span><span id="local-6989586621680939234"><span class="annot"><span class="annottext">mapMap :: forall a b. (a -&gt; b) -&gt; LabelMap a -&gt; LabelMap b
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapMap"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapMap</span></a></span></span><span> </span><span id="local-6989586621680939232"><span class="annot"><span class="annottext">a -&gt; b
</span><a href="#local-6989586621680939232"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939231"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939231"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap b -&gt; LabelMap b
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(a -&gt; b) -&gt; UniqueMap a -&gt; UniqueMap b
forall (map :: * -&gt; *) a b. IsMap map =&gt; (a -&gt; b) -&gt; map a -&gt; map b
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapMap"><span class="hs-identifier hs-var">mapMap</span></a></span><span> </span><span class="annot"><span class="annottext">a -&gt; b
</span><a href="#local-6989586621680939232"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939231"><span class="hs-identifier hs-var">m</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-104"></span><span>  </span><span id="local-6989586621680939229"><span class="annot"><span class="annottext">mapMapWithKey :: forall a b. (KeyOf LabelMap -&gt; a -&gt; b) -&gt; LabelMap a -&gt; LabelMap b
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapMapWithKey"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapMapWithKey</span></a></span></span><span> </span><span id="local-6989586621680939227"><span class="annot"><span class="annottext">KeyOf LabelMap -&gt; a -&gt; b
</span><a href="#local-6989586621680939227"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939226"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939226"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap b -&gt; LabelMap b
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(KeyOf UniqueMap -&gt; a -&gt; b) -&gt; UniqueMap a -&gt; UniqueMap b
forall (map :: * -&gt; *) a b.
IsMap map =&gt;
(KeyOf map -&gt; a -&gt; b) -&gt; map a -&gt; map b
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapMapWithKey"><span class="hs-identifier hs-var">mapMapWithKey</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">KeyOf LabelMap -&gt; a -&gt; b
Label -&gt; a -&gt; b
</span><a href="#local-6989586621680939227"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="annot"><span class="annottext">(Label -&gt; a -&gt; b) -&gt; (Int -&gt; Label) -&gt; Int -&gt; a -&gt; b
forall b c a. (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c
</span><a href="../../base/src/GHC.Base.html#."><span class="hs-operator hs-var">.</span></a></span><span> </span><span class="annot"><span class="annottext">Int -&gt; Label
</span><a href="GHC.Cmm.Dataflow.Label.html#mkHooplLabel"><span class="hs-identifier hs-var">mkHooplLabel</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939226"><span class="hs-identifier hs-var">m</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-105"></span><span>  </span><span id="local-6989586621680939224"><span class="annot"><span class="annottext">mapFoldl :: forall b a. (b -&gt; a -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFoldl"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapFoldl</span></a></span></span><span> </span><span id="local-6989586621680939222"><span class="annot"><span class="annottext">b -&gt; a -&gt; b
</span><a href="#local-6989586621680939222"><span class="hs-identifier hs-var">k</span></a></span></span><span> </span><span id="local-6989586621680939221"><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939221"><span class="hs-identifier hs-var">z</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939220"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939220"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">(b -&gt; a -&gt; b) -&gt; b -&gt; UniqueMap a -&gt; b
forall (map :: * -&gt; *) b a.
IsMap map =&gt;
(b -&gt; a -&gt; b) -&gt; b -&gt; map a -&gt; b
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFoldl"><span class="hs-identifier hs-var">mapFoldl</span></a></span><span> </span><span class="annot"><span class="annottext">b -&gt; a -&gt; b
</span><a href="#local-6989586621680939222"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939221"><span class="hs-identifier hs-var">z</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939220"><span class="hs-identifier hs-var">m</span></a></span><span>
</span><span id="line-106"></span><span>  </span><span id="local-6989586621680939218"><span class="annot"><span class="annottext">mapFoldr :: forall a b. (a -&gt; b -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFoldr"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapFoldr</span></a></span></span><span> </span><span id="local-6989586621680939216"><span class="annot"><span class="annottext">a -&gt; b -&gt; b
</span><a href="#local-6989586621680939216"><span class="hs-identifier hs-var">k</span></a></span></span><span> </span><span id="local-6989586621680939215"><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939215"><span class="hs-identifier hs-var">z</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939214"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939214"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">(a -&gt; b -&gt; b) -&gt; b -&gt; UniqueMap a -&gt; b
forall (map :: * -&gt; *) a b.
IsMap map =&gt;
(a -&gt; b -&gt; b) -&gt; b -&gt; map a -&gt; b
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFoldr"><span class="hs-identifier hs-var">mapFoldr</span></a></span><span> </span><span class="annot"><span class="annottext">a -&gt; b -&gt; b
</span><a href="#local-6989586621680939216"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939215"><span class="hs-identifier hs-var">z</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939214"><span class="hs-identifier hs-var">m</span></a></span><span>
</span><span id="line-107"></span><span>  </span><span id="local-6989586621680939212"><span class="annot"><span class="annottext">mapFoldlWithKey :: forall b a. (b -&gt; KeyOf LabelMap -&gt; a -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFoldlWithKey"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapFoldlWithKey</span></a></span></span><span> </span><span id="local-6989586621680939210"><span class="annot"><span class="annottext">b -&gt; KeyOf LabelMap -&gt; a -&gt; b
</span><a href="#local-6989586621680939210"><span class="hs-identifier hs-var">k</span></a></span></span><span> </span><span id="local-6989586621680939209"><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939209"><span class="hs-identifier hs-var">z</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939208"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939208"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span>
</span><span id="line-108"></span><span>      </span><span class="annot"><span class="annottext">(b -&gt; KeyOf UniqueMap -&gt; a -&gt; b) -&gt; b -&gt; UniqueMap a -&gt; b
forall (map :: * -&gt; *) b a.
IsMap map =&gt;
(b -&gt; KeyOf map -&gt; a -&gt; b) -&gt; b -&gt; map a -&gt; b
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFoldlWithKey"><span class="hs-identifier hs-var">mapFoldlWithKey</span></a></span><span> </span><span class="hs-special">(</span><span class="hs-glyph">\</span><span id="local-6989586621680939207"><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939207"><span class="hs-identifier hs-var">a</span></a></span></span><span> </span><span id="local-6989586621680939206"><span class="annot"><span class="annottext">KeyOf UniqueMap
</span><a href="#local-6989586621680939206"><span class="hs-identifier hs-var">v</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">b -&gt; KeyOf LabelMap -&gt; a -&gt; b
</span><a href="#local-6989586621680939210"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939207"><span class="hs-identifier hs-var">a</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Int -&gt; Label
</span><a href="GHC.Cmm.Dataflow.Label.html#mkHooplLabel"><span class="hs-identifier hs-var">mkHooplLabel</span></a></span><span> </span><span class="annot"><span class="annottext">Int
KeyOf UniqueMap
</span><a href="#local-6989586621680939206"><span class="hs-identifier hs-var">v</span></a></span><span class="hs-special">)</span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939209"><span class="hs-identifier hs-var">z</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939208"><span class="hs-identifier hs-var">m</span></a></span><span>
</span><span id="line-109"></span><span>  </span><span id="local-6989586621680939202"><span class="annot"><span class="annottext">mapFoldMapWithKey :: forall m a.
Monoid m =&gt;
(KeyOf LabelMap -&gt; a -&gt; m) -&gt; LabelMap a -&gt; m
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFoldMapWithKey"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapFoldMapWithKey</span></a></span></span><span> </span><span id="local-6989586621680939200"><span class="annot"><span class="annottext">KeyOf LabelMap -&gt; a -&gt; m
</span><a href="#local-6989586621680939200"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939199"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939199"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">(KeyOf UniqueMap -&gt; a -&gt; m) -&gt; UniqueMap a -&gt; m
forall (map :: * -&gt; *) m a.
(IsMap map, Monoid m) =&gt;
(KeyOf map -&gt; a -&gt; m) -&gt; map a -&gt; m
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFoldMapWithKey"><span class="hs-identifier hs-var">mapFoldMapWithKey</span></a></span><span> </span><span class="hs-special">(</span><span class="hs-glyph">\</span><span id="local-6989586621680939198"><span class="annot"><span class="annottext">KeyOf UniqueMap
</span><a href="#local-6989586621680939198"><span class="hs-identifier hs-var">k</span></a></span></span><span> </span><span id="local-6989586621680939197"><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939197"><span class="hs-identifier hs-var">v</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">KeyOf LabelMap -&gt; a -&gt; m
</span><a href="#local-6989586621680939200"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Int -&gt; Label
</span><a href="GHC.Cmm.Dataflow.Label.html#mkHooplLabel"><span class="hs-identifier hs-var">mkHooplLabel</span></a></span><span> </span><span class="annot"><span class="annottext">Int
KeyOf UniqueMap
</span><a href="#local-6989586621680939198"><span class="hs-identifier hs-var">k</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939197"><span class="hs-identifier hs-var">v</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939199"><span class="hs-identifier hs-var">m</span></a></span><span>
</span><span id="line-110"></span><span>  </span><span class="hs-pragma">{-# INLINEABLE</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Collections.html#mapFilter"><span class="hs-pragma hs-type">mapFilter</span></a></span><span> </span><span class="hs-pragma">#-}</span><span>
</span><span id="line-111"></span><span>  </span><span id="local-6989586621680939194"><span class="annot"><span class="annottext">mapFilter :: forall a. (a -&gt; Bool) -&gt; LabelMap a -&gt; LabelMap a
</span><a href="#local-6989586621680939194"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapFilter</span></a></span></span><span> </span><span id="local-6989586621680939193"><span class="annot"><span class="annottext">a -&gt; Bool
</span><a href="#local-6989586621680939193"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939192"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939192"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(a -&gt; Bool) -&gt; UniqueMap a -&gt; UniqueMap a
forall (map :: * -&gt; *) a.
IsMap map =&gt;
(a -&gt; Bool) -&gt; map a -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFilter"><span class="hs-identifier hs-var">mapFilter</span></a></span><span> </span><span class="annot"><span class="annottext">a -&gt; Bool
</span><a href="#local-6989586621680939193"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939192"><span class="hs-identifier hs-var">m</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-112"></span><span>  </span><span class="hs-pragma">{-# INLINEABLE</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Collections.html#mapFilterWithKey"><span class="hs-pragma hs-type">mapFilterWithKey</span></a></span><span> </span><span class="hs-pragma">#-}</span><span>
</span><span id="line-113"></span><span>  </span><span id="local-6989586621680939189"><span class="annot"><span class="annottext">mapFilterWithKey :: forall a. (KeyOf LabelMap -&gt; a -&gt; Bool) -&gt; LabelMap a -&gt; LabelMap a
</span><a href="#local-6989586621680939189"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapFilterWithKey</span></a></span></span><span> </span><span id="local-6989586621680939188"><span class="annot"><span class="annottext">KeyOf LabelMap -&gt; a -&gt; Bool
</span><a href="#local-6989586621680939188"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939187"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939187"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(KeyOf UniqueMap -&gt; a -&gt; Bool) -&gt; UniqueMap a -&gt; UniqueMap a
forall (map :: * -&gt; *) a.
IsMap map =&gt;
(KeyOf map -&gt; a -&gt; Bool) -&gt; map a -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFilterWithKey"><span class="hs-identifier hs-var">mapFilterWithKey</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">KeyOf LabelMap -&gt; a -&gt; Bool
Label -&gt; a -&gt; Bool
</span><a href="#local-6989586621680939188"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="annot"><span class="annottext">(Label -&gt; a -&gt; Bool) -&gt; (Int -&gt; Label) -&gt; Int -&gt; a -&gt; Bool
forall b c a. (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c
</span><a href="../../base/src/GHC.Base.html#."><span class="hs-operator hs-var">.</span></a></span><span> </span><span class="annot"><span class="annottext">Int -&gt; Label
</span><a href="GHC.Cmm.Dataflow.Label.html#mkHooplLabel"><span class="hs-identifier hs-var">mkHooplLabel</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939187"><span class="hs-identifier hs-var">m</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-114"></span><span>
</span><span id="line-115"></span><span>  </span><span id="local-6989586621680939185"><span class="annot"><span class="annottext">mapElems :: forall a. LabelMap a -&gt; [a]
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapElems"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapElems</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939183"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939183"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; [a]
forall (map :: * -&gt; *) a. IsMap map =&gt; map a -&gt; [a]
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapElems"><span class="hs-identifier hs-var">mapElems</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939183"><span class="hs-identifier hs-var">m</span></a></span><span>
</span><span id="line-116"></span><span>  </span><span id="local-6989586621680939181"><span class="annot"><span class="annottext">mapKeys :: forall a. LabelMap a -&gt; [KeyOf LabelMap]
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapKeys"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapKeys</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939179"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939179"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">(Int -&gt; Label) -&gt; [Int] -&gt; [Label]
forall a b. (a -&gt; b) -&gt; [a] -&gt; [b]
</span><a href="../../base/src/GHC.Base.html#map"><span class="hs-identifier hs-var">map</span></a></span><span> </span><span class="annot"><span class="annottext">Int -&gt; Label
</span><a href="GHC.Cmm.Dataflow.Label.html#mkHooplLabel"><span class="hs-identifier hs-var">mkHooplLabel</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">UniqueMap a -&gt; [KeyOf UniqueMap]
forall (map :: * -&gt; *) a. IsMap map =&gt; map a -&gt; [KeyOf map]
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapKeys"><span class="hs-identifier hs-var">mapKeys</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939179"><span class="hs-identifier hs-var">m</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-117"></span><span>  </span><span class="hs-pragma">{-# INLINEABLE</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Collections.html#mapToList"><span class="hs-pragma hs-type">mapToList</span></a></span><span> </span><span class="hs-pragma">#-}</span><span>
</span><span id="line-118"></span><span>  </span><span id="local-6989586621680939176"><span class="annot"><span class="annottext">mapToList :: forall a. LabelMap a -&gt; [(KeyOf LabelMap, a)]
</span><a href="#local-6989586621680939176"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapToList</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-type">LM</span></a></span><span> </span><span id="local-6989586621680939175"><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939175"><span class="hs-identifier hs-var">m</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-special">[</span><span class="hs-special">(</span><span class="annot"><span class="annottext">Int -&gt; Label
</span><a href="GHC.Cmm.Dataflow.Label.html#mkHooplLabel"><span class="hs-identifier hs-var">mkHooplLabel</span></a></span><span> </span><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939174"><span class="hs-identifier hs-var">k</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939173"><span class="hs-identifier hs-var">v</span></a></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">|</span><span> </span><span class="hs-special">(</span><span id="local-6989586621680939174"><span class="annot"><span class="annottext">Int
</span><a href="#local-6989586621680939174"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">,</span><span> </span><span id="local-6989586621680939173"><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939173"><span class="hs-identifier hs-var">v</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">&lt;-</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; [(KeyOf UniqueMap, a)]
forall (map :: * -&gt; *) a. IsMap map =&gt; map a -&gt; [(KeyOf map, a)]
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapToList"><span class="hs-identifier hs-var">mapToList</span></a></span><span> </span><span class="annot"><span class="annottext">UniqueMap a
</span><a href="#local-6989586621680939175"><span class="hs-identifier hs-var">m</span></a></span><span class="hs-special">]</span><span>
</span><span id="line-119"></span><span>  </span><span id="local-6989586621680939171"><span class="annot"><span class="annottext">mapFromList :: forall a. [(KeyOf LabelMap, a)] -&gt; LabelMap a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFromList"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapFromList</span></a></span></span><span> </span><span id="local-6989586621680939169"><span class="annot"><span class="annottext">[(KeyOf LabelMap, a)]
</span><a href="#local-6989586621680939169"><span class="hs-identifier hs-var">assocs</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">[(KeyOf UniqueMap, a)] -&gt; UniqueMap a
forall (map :: * -&gt; *) a. IsMap map =&gt; [(KeyOf map, a)] -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFromList"><span class="hs-identifier hs-var">mapFromList</span></a></span><span> </span><span class="hs-special">[</span><span class="hs-special">(</span><span class="annot"><span class="annottext">Label -&gt; Int
</span><a href="GHC.Cmm.Dataflow.Label.html#lblToUnique"><span class="hs-identifier hs-var hs-var">lblToUnique</span></a></span><span> </span><span class="annot"><span class="annottext">Label
</span><a href="#local-6989586621680939168"><span class="hs-identifier hs-var">k</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939167"><span class="hs-identifier hs-var">v</span></a></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">|</span><span> </span><span class="hs-special">(</span><span id="local-6989586621680939168"><span class="annot"><span class="annottext">Label
</span><a href="#local-6989586621680939168"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">,</span><span> </span><span id="local-6989586621680939167"><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939167"><span class="hs-identifier hs-var">v</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">&lt;-</span><span> </span><span class="annot"><span class="annottext">[(KeyOf LabelMap, a)]
[(Label, a)]
</span><a href="#local-6989586621680939169"><span class="hs-identifier hs-var">assocs</span></a></span><span class="hs-special">]</span><span class="hs-special">)</span><span>
</span><span id="line-120"></span><span>  </span><span id="local-6989586621680939165"><span class="annot"><span class="annottext">mapFromListWith :: forall a. (a -&gt; a -&gt; a) -&gt; [(KeyOf LabelMap, a)] -&gt; LabelMap a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFromListWith"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapFromListWith</span></a></span></span><span> </span><span id="local-6989586621680939163"><span class="annot"><span class="annottext">a -&gt; a -&gt; a
</span><a href="#local-6989586621680939163"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span id="local-6989586621680939162"><span class="annot"><span class="annottext">[(KeyOf LabelMap, a)]
</span><a href="#local-6989586621680939162"><span class="hs-identifier hs-var">assocs</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">UniqueMap a -&gt; LabelMap a
forall v. UniqueMap v -&gt; LabelMap v
</span><a href="GHC.Cmm.Dataflow.Label.html#LM"><span class="hs-identifier hs-var">LM</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(a -&gt; a -&gt; a) -&gt; [(KeyOf UniqueMap, a)] -&gt; UniqueMap a
forall (map :: * -&gt; *) a.
IsMap map =&gt;
(a -&gt; a -&gt; a) -&gt; [(KeyOf map, a)] -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFromListWith"><span class="hs-identifier hs-var">mapFromListWith</span></a></span><span> </span><span class="annot"><span class="annottext">a -&gt; a -&gt; a
</span><a href="#local-6989586621680939163"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="hs-special">[</span><span class="hs-special">(</span><span class="annot"><span class="annottext">Label -&gt; Int
</span><a href="GHC.Cmm.Dataflow.Label.html#lblToUnique"><span class="hs-identifier hs-var hs-var">lblToUnique</span></a></span><span> </span><span class="annot"><span class="annottext">Label
</span><a href="#local-6989586621680939161"><span class="hs-identifier hs-var">k</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939160"><span class="hs-identifier hs-var">v</span></a></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">|</span><span> </span><span class="hs-special">(</span><span id="local-6989586621680939161"><span class="annot"><span class="annottext">Label
</span><a href="#local-6989586621680939161"><span class="hs-identifier hs-var">k</span></a></span></span><span class="hs-special">,</span><span> </span><span id="local-6989586621680939160"><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621680939160"><span class="hs-identifier hs-var">v</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">&lt;-</span><span> </span><span class="annot"><span class="annottext">[(KeyOf LabelMap, a)]
[(Label, a)]
</span><a href="#local-6989586621680939162"><span class="hs-identifier hs-var">assocs</span></a></span><span class="hs-special">]</span><span class="hs-special">)</span><span>
</span><span id="line-121"></span><span>
</span><span id="line-122"></span><span class="hs-comment">-----------------------------------------------------------------------------</span><span>
</span><span id="line-123"></span><span class="hs-comment">-- Instances</span><span>
</span><span id="line-124"></span><span>
</span><span id="line-125"></span><span class="hs-keyword">instance</span><span> </span><span id="local-6989586621680939157"><span class="annot"><a href="GHC.Utils.Outputable.html#Outputable"><span class="hs-identifier hs-type">Outputable</span></a></span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LabelSet"><span class="hs-identifier hs-type">LabelSet</span></a></span></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-126"></span><span>  </span><span id="local-6989586621680939152"><span class="annot"><span class="annottext">ppr :: LabelSet -&gt; SDoc
</span><a href="#local-6989586621680939152"><span class="hs-identifier hs-var hs-var hs-var hs-var">ppr</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[Label] -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="annot"><span class="annottext">([Label] -&gt; SDoc) -&gt; (LabelSet -&gt; [Label]) -&gt; LabelSet -&gt; SDoc
forall b c a. (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c
</span><a href="../../base/src/GHC.Base.html#."><span class="hs-operator hs-var">.</span></a></span><span> </span><span class="annot"><span class="annottext">LabelSet -&gt; [Label]
forall set. IsSet set =&gt; set -&gt; [ElemOf set]
</span><a href="GHC.Cmm.Dataflow.Collections.html#setElems"><span class="hs-identifier hs-var">setElems</span></a></span><span>
</span><span id="line-127"></span><span>
</span><span id="line-128"></span><span id="local-6989586621680939863"><span class="hs-keyword">instance</span><span> </span><span id="local-6989586621680939149"><span class="annot"><a href="GHC.Utils.Outputable.html#Outputable"><span class="hs-identifier hs-type">Outputable</span></a></span><span> </span><span class="annot"><a href="#local-6989586621680939863"><span class="hs-identifier hs-type">a</span></a></span><span> </span><span class="hs-glyph">=&gt;</span><span> </span><span class="annot"><a href="GHC.Utils.Outputable.html#Outputable"><span class="hs-identifier hs-type">Outputable</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LabelMap"><span class="hs-identifier hs-type">LabelMap</span></a></span><span> </span><span class="annot"><a href="#local-6989586621680939863"><span class="hs-identifier hs-type">a</span></a></span><span class="hs-special">)</span></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-129"></span><span>  </span><span id="local-6989586621680939143"><span class="annot"><span class="annottext">ppr :: LabelMap a -&gt; SDoc
</span><a href="#local-6989586621680939143"><span class="hs-identifier hs-var hs-var hs-var hs-var">ppr</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[(Label, a)] -&gt; SDoc
forall a. Outputable a =&gt; a -&gt; SDoc
</span><a href="GHC.Utils.Outputable.html#ppr"><span class="hs-identifier hs-var">ppr</span></a></span><span> </span><span class="annot"><span class="annottext">([(Label, a)] -&gt; SDoc)
-&gt; (LabelMap a -&gt; [(Label, a)]) -&gt; LabelMap a -&gt; SDoc
forall b c a. (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c
</span><a href="../../base/src/GHC.Base.html#."><span class="hs-operator hs-var">.</span></a></span><span> </span><span class="annot"><span class="annottext">LabelMap a -&gt; [(Label, a)]
forall (map :: * -&gt; *) a. IsMap map =&gt; map a -&gt; [(KeyOf map, a)]
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapToList"><span class="hs-identifier hs-var">mapToList</span></a></span></span><span>
</span><span id="line-130"></span><span>
</span><span id="line-131"></span><span class="hs-keyword">instance</span><span> </span><span class="annot"><a href="GHC.Data.TrieMap.html#TrieMap"><span class="hs-identifier hs-type">TrieMap</span></a></span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LabelMap"><span class="hs-identifier hs-type">LabelMap</span></a></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-132"></span><span>  </span><span class="hs-keyword">type</span><span> </span><span id="Key"><span class="annot"><a href="GHC.Data.TrieMap.html#Key"><span class="hs-identifier hs-var">Key</span></a></span></span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LabelMap"><span class="hs-identifier hs-type">LabelMap</span></a></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span>
</span><span id="line-133"></span><span>  </span><span id="local-6989586621680939134"><span class="annot"><span class="annottext">emptyTM :: forall a. LabelMap a
</span><a href="GHC.Data.TrieMap.html#emptyTM"><span class="hs-identifier hs-var hs-var hs-var hs-var">emptyTM</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">LabelMap a
forall (map :: * -&gt; *) a. IsMap map =&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapEmpty"><span class="hs-identifier hs-var">mapEmpty</span></a></span><span>
</span><span id="line-134"></span><span>  </span><span id="local-6989586621680939131"><span class="annot"><span class="annottext">lookupTM :: forall b. Key LabelMap -&gt; LabelMap b -&gt; Maybe b
</span><a href="GHC.Data.TrieMap.html#lookupTM"><span class="hs-identifier hs-var hs-var hs-var hs-var">lookupTM</span></a></span></span><span> </span><span id="local-6989586621680939129"><span class="annot"><span class="annottext">Key LabelMap
</span><a href="#local-6989586621680939129"><span class="hs-identifier hs-var">k</span></a></span></span><span> </span><span id="local-6989586621680939128"><span class="annot"><span class="annottext">LabelMap b
</span><a href="#local-6989586621680939128"><span class="hs-identifier hs-var">m</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">KeyOf LabelMap -&gt; LabelMap b -&gt; Maybe b
forall (map :: * -&gt; *) a.
IsMap map =&gt;
KeyOf map -&gt; map a -&gt; Maybe a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapLookup"><span class="hs-identifier hs-var">mapLookup</span></a></span><span> </span><span class="annot"><span class="annottext">KeyOf LabelMap
Key LabelMap
</span><a href="#local-6989586621680939129"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">LabelMap b
</span><a href="#local-6989586621680939128"><span class="hs-identifier hs-var">m</span></a></span><span>
</span><span id="line-135"></span><span>  </span><span id="local-6989586621680939126"><span class="annot"><span class="annottext">alterTM :: forall b. Key LabelMap -&gt; XT b -&gt; LabelMap b -&gt; LabelMap b
</span><a href="GHC.Data.TrieMap.html#alterTM"><span class="hs-identifier hs-var hs-var hs-var hs-var">alterTM</span></a></span></span><span> </span><span id="local-6989586621680939124"><span class="annot"><span class="annottext">Key LabelMap
</span><a href="#local-6989586621680939124"><span class="hs-identifier hs-var">k</span></a></span></span><span> </span><span id="local-6989586621680939123"><span class="annot"><span class="annottext">XT b
</span><a href="#local-6989586621680939123"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span id="local-6989586621680939122"><span class="annot"><span class="annottext">LabelMap b
</span><a href="#local-6989586621680939122"><span class="hs-identifier hs-var">m</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">XT b -&gt; KeyOf LabelMap -&gt; LabelMap b -&gt; LabelMap b
forall (map :: * -&gt; *) a.
IsMap map =&gt;
(Maybe a -&gt; Maybe a) -&gt; KeyOf map -&gt; map a -&gt; map a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapAlter"><span class="hs-identifier hs-var">mapAlter</span></a></span><span> </span><span class="annot"><span class="annottext">XT b
</span><a href="#local-6989586621680939123"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="annot"><span class="annottext">KeyOf LabelMap
Key LabelMap
</span><a href="#local-6989586621680939124"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">LabelMap b
</span><a href="#local-6989586621680939122"><span class="hs-identifier hs-var">m</span></a></span><span>
</span><span id="line-136"></span><span>  </span><span id="local-6989586621680939120"><span class="annot"><span class="annottext">foldTM :: forall a b. (a -&gt; b -&gt; b) -&gt; LabelMap a -&gt; b -&gt; b
</span><a href="GHC.Data.TrieMap.html#foldTM"><span class="hs-identifier hs-var hs-var hs-var hs-var">foldTM</span></a></span></span><span> </span><span id="local-6989586621680939118"><span class="annot"><span class="annottext">a -&gt; b -&gt; b
</span><a href="#local-6989586621680939118"><span class="hs-identifier hs-var">k</span></a></span></span><span> </span><span id="local-6989586621680939117"><span class="annot"><span class="annottext">LabelMap a
</span><a href="#local-6989586621680939117"><span class="hs-identifier hs-var">m</span></a></span></span><span> </span><span id="local-6989586621680939116"><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939116"><span class="hs-identifier hs-var">z</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">(a -&gt; b -&gt; b) -&gt; b -&gt; LabelMap a -&gt; b
forall (map :: * -&gt; *) a b.
IsMap map =&gt;
(a -&gt; b -&gt; b) -&gt; b -&gt; map a -&gt; b
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapFoldr"><span class="hs-identifier hs-var">mapFoldr</span></a></span><span> </span><span class="annot"><span class="annottext">a -&gt; b -&gt; b
</span><a href="#local-6989586621680939118"><span class="hs-identifier hs-var">k</span></a></span><span> </span><span class="annot"><span class="annottext">b
</span><a href="#local-6989586621680939116"><span class="hs-identifier hs-var">z</span></a></span><span> </span><span class="annot"><span class="annottext">LabelMap a
</span><a href="#local-6989586621680939117"><span class="hs-identifier hs-var">m</span></a></span><span>
</span><span id="line-137"></span><span>  </span><span id="local-6989586621680939114"><span class="annot"><span class="annottext">mapTM :: forall a b. (a -&gt; b) -&gt; LabelMap a -&gt; LabelMap b
</span><a href="GHC.Data.TrieMap.html#mapTM"><span class="hs-identifier hs-var hs-var hs-var hs-var">mapTM</span></a></span></span><span> </span><span id="local-6989586621680939112"><span class="annot"><span class="annottext">a -&gt; b
</span><a href="#local-6989586621680939112"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span id="local-6989586621680939111"><span class="annot"><span class="annottext">LabelMap a
</span><a href="#local-6989586621680939111"><span class="hs-identifier hs-var">m</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">(a -&gt; b) -&gt; LabelMap a -&gt; LabelMap b
forall (map :: * -&gt; *) a b. IsMap map =&gt; (a -&gt; b) -&gt; map a -&gt; map b
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapMap"><span class="hs-identifier hs-var">mapMap</span></a></span><span> </span><span class="annot"><span class="annottext">a -&gt; b
</span><a href="#local-6989586621680939112"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="annot"><span class="annottext">LabelMap a
</span><a href="#local-6989586621680939111"><span class="hs-identifier hs-var">m</span></a></span><span>
</span><span id="line-138"></span><span>
</span><span id="line-139"></span><span class="hs-comment">-----------------------------------------------------------------------------</span><span>
</span><span id="line-140"></span><span class="hs-comment">-- FactBase</span><span>
</span><span id="line-141"></span><span>
</span><span id="line-142"></span><span class="hs-keyword">type</span><span> </span><span id="FactBase"><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#FactBase"><span class="hs-identifier hs-var">FactBase</span></a></span></span><span> </span><span id="local-6989586621680939110"><span class="annot"><a href="#local-6989586621680939110"><span class="hs-identifier hs-type">f</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#LabelMap"><span class="hs-identifier hs-type">LabelMap</span></a></span><span> </span><span class="annot"><a href="#local-6989586621680939110"><span class="hs-identifier hs-type">f</span></a></span><span>
</span><span id="line-143"></span><span>
</span><span id="line-144"></span><span id="local-6989586621680939842"><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#lookupFact"><span class="hs-identifier hs-type">lookupFact</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#Label"><span class="hs-identifier hs-type">Label</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="GHC.Cmm.Dataflow.Label.html#FactBase"><span class="hs-identifier hs-type">FactBase</span></a></span><span> </span><span class="annot"><a href="#local-6989586621680939842"><span class="hs-identifier hs-type">f</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="../../base/src/GHC.Maybe.html#Maybe"><span class="hs-identifier hs-type">Maybe</span></a></span><span> </span><span class="annot"><a href="#local-6989586621680939842"><span class="hs-identifier hs-type">f</span></a></span></span><span>
</span><span id="line-145"></span><span id="lookupFact"><span class="annot"><span class="annottext">lookupFact :: forall f. Label -&gt; FactBase f -&gt; Maybe f
</span><a href="GHC.Cmm.Dataflow.Label.html#lookupFact"><span class="hs-identifier hs-var hs-var">lookupFact</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Label -&gt; LabelMap f -&gt; Maybe f
forall (map :: * -&gt; *) a.
IsMap map =&gt;
KeyOf map -&gt; map a -&gt; Maybe a
</span><a href="GHC.Cmm.Dataflow.Collections.html#mapLookup"><span class="hs-identifier hs-var">mapLookup</span></a></span><span>
</span><span id="line-146"></span></pre></body></html>